module Stratosphere.BedrockAgentCore.Memory.UserPreferenceOverrideExtractionConfigurationInputProperty (
        UserPreferenceOverrideExtractionConfigurationInputProperty(..),
        mkUserPreferenceOverrideExtractionConfigurationInputProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data UserPreferenceOverrideExtractionConfigurationInputProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrockagentcore-memory-userpreferenceoverrideextractionconfigurationinput.html>
    UserPreferenceOverrideExtractionConfigurationInputProperty {UserPreferenceOverrideExtractionConfigurationInputProperty -> ()
haddock_workaround_ :: (),
                                                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrockagentcore-memory-userpreferenceoverrideextractionconfigurationinput.html#cfn-bedrockagentcore-memory-userpreferenceoverrideextractionconfigurationinput-appendtoprompt>
                                                                UserPreferenceOverrideExtractionConfigurationInputProperty
-> Value Text
appendToPrompt :: (Value Prelude.Text),
                                                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrockagentcore-memory-userpreferenceoverrideextractionconfigurationinput.html#cfn-bedrockagentcore-memory-userpreferenceoverrideextractionconfigurationinput-modelid>
                                                                UserPreferenceOverrideExtractionConfigurationInputProperty
-> Value Text
modelId :: (Value Prelude.Text)}
  deriving stock (UserPreferenceOverrideExtractionConfigurationInputProperty
-> UserPreferenceOverrideExtractionConfigurationInputProperty
-> Bool
(UserPreferenceOverrideExtractionConfigurationInputProperty
 -> UserPreferenceOverrideExtractionConfigurationInputProperty
 -> Bool)
-> (UserPreferenceOverrideExtractionConfigurationInputProperty
    -> UserPreferenceOverrideExtractionConfigurationInputProperty
    -> Bool)
-> Eq UserPreferenceOverrideExtractionConfigurationInputProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: UserPreferenceOverrideExtractionConfigurationInputProperty
-> UserPreferenceOverrideExtractionConfigurationInputProperty
-> Bool
== :: UserPreferenceOverrideExtractionConfigurationInputProperty
-> UserPreferenceOverrideExtractionConfigurationInputProperty
-> Bool
$c/= :: UserPreferenceOverrideExtractionConfigurationInputProperty
-> UserPreferenceOverrideExtractionConfigurationInputProperty
-> Bool
/= :: UserPreferenceOverrideExtractionConfigurationInputProperty
-> UserPreferenceOverrideExtractionConfigurationInputProperty
-> Bool
Prelude.Eq, Int
-> UserPreferenceOverrideExtractionConfigurationInputProperty
-> ShowS
[UserPreferenceOverrideExtractionConfigurationInputProperty]
-> ShowS
UserPreferenceOverrideExtractionConfigurationInputProperty
-> String
(Int
 -> UserPreferenceOverrideExtractionConfigurationInputProperty
 -> ShowS)
-> (UserPreferenceOverrideExtractionConfigurationInputProperty
    -> String)
-> ([UserPreferenceOverrideExtractionConfigurationInputProperty]
    -> ShowS)
-> Show UserPreferenceOverrideExtractionConfigurationInputProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int
-> UserPreferenceOverrideExtractionConfigurationInputProperty
-> ShowS
showsPrec :: Int
-> UserPreferenceOverrideExtractionConfigurationInputProperty
-> ShowS
$cshow :: UserPreferenceOverrideExtractionConfigurationInputProperty
-> String
show :: UserPreferenceOverrideExtractionConfigurationInputProperty
-> String
$cshowList :: [UserPreferenceOverrideExtractionConfigurationInputProperty]
-> ShowS
showList :: [UserPreferenceOverrideExtractionConfigurationInputProperty]
-> ShowS
Prelude.Show)
mkUserPreferenceOverrideExtractionConfigurationInputProperty ::
  Value Prelude.Text
  -> Value Prelude.Text
     -> UserPreferenceOverrideExtractionConfigurationInputProperty
mkUserPreferenceOverrideExtractionConfigurationInputProperty :: Value Text
-> Value Text
-> UserPreferenceOverrideExtractionConfigurationInputProperty
mkUserPreferenceOverrideExtractionConfigurationInputProperty
  Value Text
appendToPrompt
  Value Text
modelId
  = UserPreferenceOverrideExtractionConfigurationInputProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), appendToPrompt :: Value Text
appendToPrompt = Value Text
appendToPrompt,
       modelId :: Value Text
modelId = Value Text
modelId}
instance ToResourceProperties UserPreferenceOverrideExtractionConfigurationInputProperty where
  toResourceProperties :: UserPreferenceOverrideExtractionConfigurationInputProperty
-> ResourceProperties
toResourceProperties
    UserPreferenceOverrideExtractionConfigurationInputProperty {()
Value Text
haddock_workaround_ :: UserPreferenceOverrideExtractionConfigurationInputProperty -> ()
appendToPrompt :: UserPreferenceOverrideExtractionConfigurationInputProperty
-> Value Text
modelId :: UserPreferenceOverrideExtractionConfigurationInputProperty
-> Value Text
haddock_workaround_ :: ()
appendToPrompt :: Value Text
modelId :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::BedrockAgentCore::Memory.UserPreferenceOverrideExtractionConfigurationInput",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"AppendToPrompt" 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
appendToPrompt,
                       Key
"ModelId" 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
modelId]}
instance JSON.ToJSON UserPreferenceOverrideExtractionConfigurationInputProperty where
  toJSON :: UserPreferenceOverrideExtractionConfigurationInputProperty -> Value
toJSON
    UserPreferenceOverrideExtractionConfigurationInputProperty {()
Value Text
haddock_workaround_ :: UserPreferenceOverrideExtractionConfigurationInputProperty -> ()
appendToPrompt :: UserPreferenceOverrideExtractionConfigurationInputProperty
-> Value Text
modelId :: UserPreferenceOverrideExtractionConfigurationInputProperty
-> Value Text
haddock_workaround_ :: ()
appendToPrompt :: Value Text
modelId :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"AppendToPrompt" 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
appendToPrompt,
         Key
"ModelId" 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
modelId]
instance Property "AppendToPrompt" UserPreferenceOverrideExtractionConfigurationInputProperty where
  type PropertyType "AppendToPrompt" UserPreferenceOverrideExtractionConfigurationInputProperty = Value Prelude.Text
  set :: PropertyType
  "AppendToPrompt"
  UserPreferenceOverrideExtractionConfigurationInputProperty
-> UserPreferenceOverrideExtractionConfigurationInputProperty
-> UserPreferenceOverrideExtractionConfigurationInputProperty
set
    PropertyType
  "AppendToPrompt"
  UserPreferenceOverrideExtractionConfigurationInputProperty
newValue
    UserPreferenceOverrideExtractionConfigurationInputProperty {()
Value Text
haddock_workaround_ :: UserPreferenceOverrideExtractionConfigurationInputProperty -> ()
appendToPrompt :: UserPreferenceOverrideExtractionConfigurationInputProperty
-> Value Text
modelId :: UserPreferenceOverrideExtractionConfigurationInputProperty
-> Value Text
haddock_workaround_ :: ()
appendToPrompt :: Value Text
modelId :: Value Text
..}
    = UserPreferenceOverrideExtractionConfigurationInputProperty
        {appendToPrompt :: Value Text
appendToPrompt = PropertyType
  "AppendToPrompt"
  UserPreferenceOverrideExtractionConfigurationInputProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
modelId :: Value Text
haddock_workaround_ :: ()
modelId :: Value Text
..}
instance Property "ModelId" UserPreferenceOverrideExtractionConfigurationInputProperty where
  type PropertyType "ModelId" UserPreferenceOverrideExtractionConfigurationInputProperty = Value Prelude.Text
  set :: PropertyType
  "ModelId"
  UserPreferenceOverrideExtractionConfigurationInputProperty
-> UserPreferenceOverrideExtractionConfigurationInputProperty
-> UserPreferenceOverrideExtractionConfigurationInputProperty
set
    PropertyType
  "ModelId"
  UserPreferenceOverrideExtractionConfigurationInputProperty
newValue
    UserPreferenceOverrideExtractionConfigurationInputProperty {()
Value Text
haddock_workaround_ :: UserPreferenceOverrideExtractionConfigurationInputProperty -> ()
appendToPrompt :: UserPreferenceOverrideExtractionConfigurationInputProperty
-> Value Text
modelId :: UserPreferenceOverrideExtractionConfigurationInputProperty
-> Value Text
haddock_workaround_ :: ()
appendToPrompt :: Value Text
modelId :: Value Text
..}
    = UserPreferenceOverrideExtractionConfigurationInputProperty
        {modelId :: Value Text
modelId = PropertyType
  "ModelId"
  UserPreferenceOverrideExtractionConfigurationInputProperty
Value Text
newValue, ()
Value Text
haddock_workaround_ :: ()
appendToPrompt :: Value Text
haddock_workaround_ :: ()
appendToPrompt :: Value Text
..}