module Stratosphere.Wisdom.AIGuardrail.GuardrailContextualGroundingFilterConfigProperty (
        GuardrailContextualGroundingFilterConfigProperty(..),
        mkGuardrailContextualGroundingFilterConfigProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data GuardrailContextualGroundingFilterConfigProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiguardrail-guardrailcontextualgroundingfilterconfig.html>
    GuardrailContextualGroundingFilterConfigProperty {GuardrailContextualGroundingFilterConfigProperty -> ()
haddock_workaround_ :: (),
                                                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiguardrail-guardrailcontextualgroundingfilterconfig.html#cfn-wisdom-aiguardrail-guardrailcontextualgroundingfilterconfig-threshold>
                                                      GuardrailContextualGroundingFilterConfigProperty -> Value Double
threshold :: (Value Prelude.Double),
                                                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wisdom-aiguardrail-guardrailcontextualgroundingfilterconfig.html#cfn-wisdom-aiguardrail-guardrailcontextualgroundingfilterconfig-type>
                                                      GuardrailContextualGroundingFilterConfigProperty -> Value Text
type' :: (Value Prelude.Text)}
  deriving stock (GuardrailContextualGroundingFilterConfigProperty
-> GuardrailContextualGroundingFilterConfigProperty -> Bool
(GuardrailContextualGroundingFilterConfigProperty
 -> GuardrailContextualGroundingFilterConfigProperty -> Bool)
-> (GuardrailContextualGroundingFilterConfigProperty
    -> GuardrailContextualGroundingFilterConfigProperty -> Bool)
-> Eq GuardrailContextualGroundingFilterConfigProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: GuardrailContextualGroundingFilterConfigProperty
-> GuardrailContextualGroundingFilterConfigProperty -> Bool
== :: GuardrailContextualGroundingFilterConfigProperty
-> GuardrailContextualGroundingFilterConfigProperty -> Bool
$c/= :: GuardrailContextualGroundingFilterConfigProperty
-> GuardrailContextualGroundingFilterConfigProperty -> Bool
/= :: GuardrailContextualGroundingFilterConfigProperty
-> GuardrailContextualGroundingFilterConfigProperty -> Bool
Prelude.Eq, Int -> GuardrailContextualGroundingFilterConfigProperty -> ShowS
[GuardrailContextualGroundingFilterConfigProperty] -> ShowS
GuardrailContextualGroundingFilterConfigProperty -> String
(Int -> GuardrailContextualGroundingFilterConfigProperty -> ShowS)
-> (GuardrailContextualGroundingFilterConfigProperty -> String)
-> ([GuardrailContextualGroundingFilterConfigProperty] -> ShowS)
-> Show GuardrailContextualGroundingFilterConfigProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> GuardrailContextualGroundingFilterConfigProperty -> ShowS
showsPrec :: Int -> GuardrailContextualGroundingFilterConfigProperty -> ShowS
$cshow :: GuardrailContextualGroundingFilterConfigProperty -> String
show :: GuardrailContextualGroundingFilterConfigProperty -> String
$cshowList :: [GuardrailContextualGroundingFilterConfigProperty] -> ShowS
showList :: [GuardrailContextualGroundingFilterConfigProperty] -> ShowS
Prelude.Show)
mkGuardrailContextualGroundingFilterConfigProperty ::
  Value Prelude.Double
  -> Value Prelude.Text
     -> GuardrailContextualGroundingFilterConfigProperty
mkGuardrailContextualGroundingFilterConfigProperty :: Value Double
-> Value Text -> GuardrailContextualGroundingFilterConfigProperty
mkGuardrailContextualGroundingFilterConfigProperty Value Double
threshold Value Text
type'
  = GuardrailContextualGroundingFilterConfigProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), threshold :: Value Double
threshold = Value Double
threshold, type' :: Value Text
type' = Value Text
type'}
instance ToResourceProperties GuardrailContextualGroundingFilterConfigProperty where
  toResourceProperties :: GuardrailContextualGroundingFilterConfigProperty
-> ResourceProperties
toResourceProperties
    GuardrailContextualGroundingFilterConfigProperty {()
Value Double
Value Text
haddock_workaround_ :: GuardrailContextualGroundingFilterConfigProperty -> ()
threshold :: GuardrailContextualGroundingFilterConfigProperty -> Value Double
type' :: GuardrailContextualGroundingFilterConfigProperty -> Value Text
haddock_workaround_ :: ()
threshold :: Value Double
type' :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::Wisdom::AIGuardrail.GuardrailContextualGroundingFilterConfig",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"Threshold" Key -> Value Double -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Double
threshold, Key
"Type" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
type']}
instance JSON.ToJSON GuardrailContextualGroundingFilterConfigProperty where
  toJSON :: GuardrailContextualGroundingFilterConfigProperty -> Value
toJSON GuardrailContextualGroundingFilterConfigProperty {()
Value Double
Value Text
haddock_workaround_ :: GuardrailContextualGroundingFilterConfigProperty -> ()
threshold :: GuardrailContextualGroundingFilterConfigProperty -> Value Double
type' :: GuardrailContextualGroundingFilterConfigProperty -> Value Text
haddock_workaround_ :: ()
threshold :: Value Double
type' :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object [Key
"Threshold" Key -> Value Double -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Double
threshold, Key
"Type" Key -> Value Text -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= Value Text
type']
instance Property "Threshold" GuardrailContextualGroundingFilterConfigProperty where
  type PropertyType "Threshold" GuardrailContextualGroundingFilterConfigProperty = Value Prelude.Double
  set :: PropertyType
  "Threshold" GuardrailContextualGroundingFilterConfigProperty
-> GuardrailContextualGroundingFilterConfigProperty
-> GuardrailContextualGroundingFilterConfigProperty
set PropertyType
  "Threshold" GuardrailContextualGroundingFilterConfigProperty
newValue GuardrailContextualGroundingFilterConfigProperty {()
Value Double
Value Text
haddock_workaround_ :: GuardrailContextualGroundingFilterConfigProperty -> ()
threshold :: GuardrailContextualGroundingFilterConfigProperty -> Value Double
type' :: GuardrailContextualGroundingFilterConfigProperty -> Value Text
haddock_workaround_ :: ()
threshold :: Value Double
type' :: Value Text
..}
    = GuardrailContextualGroundingFilterConfigProperty
        {threshold :: Value Double
threshold = PropertyType
  "Threshold" GuardrailContextualGroundingFilterConfigProperty
Value Double
newValue, ()
Value Text
haddock_workaround_ :: ()
type' :: Value Text
haddock_workaround_ :: ()
type' :: Value Text
..}
instance Property "Type" GuardrailContextualGroundingFilterConfigProperty where
  type PropertyType "Type" GuardrailContextualGroundingFilterConfigProperty = Value Prelude.Text
  set :: PropertyType
  "Type" GuardrailContextualGroundingFilterConfigProperty
-> GuardrailContextualGroundingFilterConfigProperty
-> GuardrailContextualGroundingFilterConfigProperty
set PropertyType
  "Type" GuardrailContextualGroundingFilterConfigProperty
newValue GuardrailContextualGroundingFilterConfigProperty {()
Value Double
Value Text
haddock_workaround_ :: GuardrailContextualGroundingFilterConfigProperty -> ()
threshold :: GuardrailContextualGroundingFilterConfigProperty -> Value Double
type' :: GuardrailContextualGroundingFilterConfigProperty -> Value Text
haddock_workaround_ :: ()
threshold :: Value Double
type' :: Value Text
..}
    = GuardrailContextualGroundingFilterConfigProperty
        {type' :: Value Text
type' = PropertyType
  "Type" GuardrailContextualGroundingFilterConfigProperty
Value Text
newValue, ()
Value Double
haddock_workaround_ :: ()
threshold :: Value Double
haddock_workaround_ :: ()
threshold :: Value Double
..}