{-# 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.ComputeOptimizer.Types.ExportableLambdaFunctionField
-- 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.ComputeOptimizer.Types.ExportableLambdaFunctionField
  ( ExportableLambdaFunctionField
      ( ..,
        ExportableLambdaFunctionField_AccountId,
        ExportableLambdaFunctionField_CurrentConfigurationMemorySize,
        ExportableLambdaFunctionField_CurrentConfigurationTimeout,
        ExportableLambdaFunctionField_CurrentCostAverage,
        ExportableLambdaFunctionField_CurrentCostTotal,
        ExportableLambdaFunctionField_CurrentPerformanceRisk,
        ExportableLambdaFunctionField_Finding,
        ExportableLambdaFunctionField_FindingReasonCodes,
        ExportableLambdaFunctionField_FunctionArn,
        ExportableLambdaFunctionField_FunctionVersion,
        ExportableLambdaFunctionField_LastRefreshTimestamp,
        ExportableLambdaFunctionField_LookbackPeriodInDays,
        ExportableLambdaFunctionField_NumberOfInvocations,
        ExportableLambdaFunctionField_RecommendationOptionsConfigurationMemorySize,
        ExportableLambdaFunctionField_RecommendationOptionsCostHigh,
        ExportableLambdaFunctionField_RecommendationOptionsCostLow,
        ExportableLambdaFunctionField_RecommendationOptionsEstimatedMonthlySavingsCurrency,
        ExportableLambdaFunctionField_RecommendationOptionsEstimatedMonthlySavingsValue,
        ExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationExpected,
        ExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationLowerBound,
        ExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationUpperBound,
        ExportableLambdaFunctionField_RecommendationOptionsSavingsOpportunityPercentage,
        ExportableLambdaFunctionField_UtilizationMetricsDurationAverage,
        ExportableLambdaFunctionField_UtilizationMetricsDurationMaximum,
        ExportableLambdaFunctionField_UtilizationMetricsMemoryAverage,
        ExportableLambdaFunctionField_UtilizationMetricsMemoryMaximum
      ),
  )
where

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

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

pattern ExportableLambdaFunctionField_AccountId :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_AccountId :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_AccountId :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_AccountId = ExportableLambdaFunctionField' "AccountId"

pattern ExportableLambdaFunctionField_CurrentConfigurationMemorySize :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_CurrentConfigurationMemorySize :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_CurrentConfigurationMemorySize :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_CurrentConfigurationMemorySize = ExportableLambdaFunctionField' "CurrentConfigurationMemorySize"

pattern ExportableLambdaFunctionField_CurrentConfigurationTimeout :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_CurrentConfigurationTimeout :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_CurrentConfigurationTimeout :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_CurrentConfigurationTimeout = ExportableLambdaFunctionField' "CurrentConfigurationTimeout"

pattern ExportableLambdaFunctionField_CurrentCostAverage :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_CurrentCostAverage :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_CurrentCostAverage :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_CurrentCostAverage = ExportableLambdaFunctionField' "CurrentCostAverage"

pattern ExportableLambdaFunctionField_CurrentCostTotal :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_CurrentCostTotal :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_CurrentCostTotal :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_CurrentCostTotal = ExportableLambdaFunctionField' "CurrentCostTotal"

pattern ExportableLambdaFunctionField_CurrentPerformanceRisk :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_CurrentPerformanceRisk :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_CurrentPerformanceRisk :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_CurrentPerformanceRisk = ExportableLambdaFunctionField' "CurrentPerformanceRisk"

pattern ExportableLambdaFunctionField_Finding :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_Finding :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_Finding :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_Finding = ExportableLambdaFunctionField' "Finding"

pattern ExportableLambdaFunctionField_FindingReasonCodes :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_FindingReasonCodes :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_FindingReasonCodes :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_FindingReasonCodes = ExportableLambdaFunctionField' "FindingReasonCodes"

pattern ExportableLambdaFunctionField_FunctionArn :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_FunctionArn :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_FunctionArn :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_FunctionArn = ExportableLambdaFunctionField' "FunctionArn"

pattern ExportableLambdaFunctionField_FunctionVersion :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_FunctionVersion :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_FunctionVersion :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_FunctionVersion = ExportableLambdaFunctionField' "FunctionVersion"

pattern ExportableLambdaFunctionField_LastRefreshTimestamp :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_LastRefreshTimestamp :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_LastRefreshTimestamp :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_LastRefreshTimestamp = ExportableLambdaFunctionField' "LastRefreshTimestamp"

pattern ExportableLambdaFunctionField_LookbackPeriodInDays :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_LookbackPeriodInDays :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_LookbackPeriodInDays :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_LookbackPeriodInDays = ExportableLambdaFunctionField' "LookbackPeriodInDays"

pattern ExportableLambdaFunctionField_NumberOfInvocations :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_NumberOfInvocations :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_NumberOfInvocations :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_NumberOfInvocations = ExportableLambdaFunctionField' "NumberOfInvocations"

pattern ExportableLambdaFunctionField_RecommendationOptionsConfigurationMemorySize :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_RecommendationOptionsConfigurationMemorySize :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_RecommendationOptionsConfigurationMemorySize :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_RecommendationOptionsConfigurationMemorySize = ExportableLambdaFunctionField' "RecommendationOptionsConfigurationMemorySize"

pattern ExportableLambdaFunctionField_RecommendationOptionsCostHigh :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_RecommendationOptionsCostHigh :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_RecommendationOptionsCostHigh :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_RecommendationOptionsCostHigh = ExportableLambdaFunctionField' "RecommendationOptionsCostHigh"

pattern ExportableLambdaFunctionField_RecommendationOptionsCostLow :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_RecommendationOptionsCostLow :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_RecommendationOptionsCostLow :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_RecommendationOptionsCostLow = ExportableLambdaFunctionField' "RecommendationOptionsCostLow"

pattern ExportableLambdaFunctionField_RecommendationOptionsEstimatedMonthlySavingsCurrency :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_RecommendationOptionsEstimatedMonthlySavingsCurrency :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_RecommendationOptionsEstimatedMonthlySavingsCurrency :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_RecommendationOptionsEstimatedMonthlySavingsCurrency = ExportableLambdaFunctionField' "RecommendationOptionsEstimatedMonthlySavingsCurrency"

pattern ExportableLambdaFunctionField_RecommendationOptionsEstimatedMonthlySavingsValue :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_RecommendationOptionsEstimatedMonthlySavingsValue :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_RecommendationOptionsEstimatedMonthlySavingsValue :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_RecommendationOptionsEstimatedMonthlySavingsValue = ExportableLambdaFunctionField' "RecommendationOptionsEstimatedMonthlySavingsValue"

pattern ExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationExpected :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationExpected :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationExpected :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationExpected = ExportableLambdaFunctionField' "RecommendationOptionsProjectedUtilizationMetricsDurationExpected"

pattern ExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationLowerBound :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationLowerBound :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationLowerBound :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationLowerBound = ExportableLambdaFunctionField' "RecommendationOptionsProjectedUtilizationMetricsDurationLowerBound"

pattern ExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationUpperBound :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationUpperBound :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationUpperBound :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationUpperBound = ExportableLambdaFunctionField' "RecommendationOptionsProjectedUtilizationMetricsDurationUpperBound"

pattern ExportableLambdaFunctionField_RecommendationOptionsSavingsOpportunityPercentage :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_RecommendationOptionsSavingsOpportunityPercentage :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_RecommendationOptionsSavingsOpportunityPercentage :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_RecommendationOptionsSavingsOpportunityPercentage = ExportableLambdaFunctionField' "RecommendationOptionsSavingsOpportunityPercentage"

pattern ExportableLambdaFunctionField_UtilizationMetricsDurationAverage :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_UtilizationMetricsDurationAverage :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_UtilizationMetricsDurationAverage :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_UtilizationMetricsDurationAverage = ExportableLambdaFunctionField' "UtilizationMetricsDurationAverage"

pattern ExportableLambdaFunctionField_UtilizationMetricsDurationMaximum :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_UtilizationMetricsDurationMaximum :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_UtilizationMetricsDurationMaximum :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_UtilizationMetricsDurationMaximum = ExportableLambdaFunctionField' "UtilizationMetricsDurationMaximum"

pattern ExportableLambdaFunctionField_UtilizationMetricsMemoryAverage :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_UtilizationMetricsMemoryAverage :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_UtilizationMetricsMemoryAverage :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_UtilizationMetricsMemoryAverage = ExportableLambdaFunctionField' "UtilizationMetricsMemoryAverage"

pattern ExportableLambdaFunctionField_UtilizationMetricsMemoryMaximum :: ExportableLambdaFunctionField
pattern $bExportableLambdaFunctionField_UtilizationMetricsMemoryMaximum :: ExportableLambdaFunctionField
$mExportableLambdaFunctionField_UtilizationMetricsMemoryMaximum :: forall {r}.
ExportableLambdaFunctionField -> ((# #) -> r) -> ((# #) -> r) -> r
ExportableLambdaFunctionField_UtilizationMetricsMemoryMaximum = ExportableLambdaFunctionField' "UtilizationMetricsMemoryMaximum"

{-# COMPLETE
  ExportableLambdaFunctionField_AccountId,
  ExportableLambdaFunctionField_CurrentConfigurationMemorySize,
  ExportableLambdaFunctionField_CurrentConfigurationTimeout,
  ExportableLambdaFunctionField_CurrentCostAverage,
  ExportableLambdaFunctionField_CurrentCostTotal,
  ExportableLambdaFunctionField_CurrentPerformanceRisk,
  ExportableLambdaFunctionField_Finding,
  ExportableLambdaFunctionField_FindingReasonCodes,
  ExportableLambdaFunctionField_FunctionArn,
  ExportableLambdaFunctionField_FunctionVersion,
  ExportableLambdaFunctionField_LastRefreshTimestamp,
  ExportableLambdaFunctionField_LookbackPeriodInDays,
  ExportableLambdaFunctionField_NumberOfInvocations,
  ExportableLambdaFunctionField_RecommendationOptionsConfigurationMemorySize,
  ExportableLambdaFunctionField_RecommendationOptionsCostHigh,
  ExportableLambdaFunctionField_RecommendationOptionsCostLow,
  ExportableLambdaFunctionField_RecommendationOptionsEstimatedMonthlySavingsCurrency,
  ExportableLambdaFunctionField_RecommendationOptionsEstimatedMonthlySavingsValue,
  ExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationExpected,
  ExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationLowerBound,
  ExportableLambdaFunctionField_RecommendationOptionsProjectedUtilizationMetricsDurationUpperBound,
  ExportableLambdaFunctionField_RecommendationOptionsSavingsOpportunityPercentage,
  ExportableLambdaFunctionField_UtilizationMetricsDurationAverage,
  ExportableLambdaFunctionField_UtilizationMetricsDurationMaximum,
  ExportableLambdaFunctionField_UtilizationMetricsMemoryAverage,
  ExportableLambdaFunctionField_UtilizationMetricsMemoryMaximum,
  ExportableLambdaFunctionField'
  #-}