module Stratosphere.Bedrock.ApplicationInferenceProfile.InferenceProfileModelSourceProperty (
        InferenceProfileModelSourceProperty(..),
        mkInferenceProfileModelSourceProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import Stratosphere.ResourceProperties
import Stratosphere.Value
data InferenceProfileModelSourceProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-applicationinferenceprofile-inferenceprofilemodelsource.html>
    InferenceProfileModelSourceProperty {InferenceProfileModelSourceProperty -> ()
haddock_workaround_ :: (),
                                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-applicationinferenceprofile-inferenceprofilemodelsource.html#cfn-bedrock-applicationinferenceprofile-inferenceprofilemodelsource-copyfrom>
                                         InferenceProfileModelSourceProperty -> Value Text
copyFrom :: (Value Prelude.Text)}
  deriving stock (InferenceProfileModelSourceProperty
-> InferenceProfileModelSourceProperty -> Bool
(InferenceProfileModelSourceProperty
 -> InferenceProfileModelSourceProperty -> Bool)
-> (InferenceProfileModelSourceProperty
    -> InferenceProfileModelSourceProperty -> Bool)
-> Eq InferenceProfileModelSourceProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: InferenceProfileModelSourceProperty
-> InferenceProfileModelSourceProperty -> Bool
== :: InferenceProfileModelSourceProperty
-> InferenceProfileModelSourceProperty -> Bool
$c/= :: InferenceProfileModelSourceProperty
-> InferenceProfileModelSourceProperty -> Bool
/= :: InferenceProfileModelSourceProperty
-> InferenceProfileModelSourceProperty -> Bool
Prelude.Eq, Int -> InferenceProfileModelSourceProperty -> ShowS
[InferenceProfileModelSourceProperty] -> ShowS
InferenceProfileModelSourceProperty -> String
(Int -> InferenceProfileModelSourceProperty -> ShowS)
-> (InferenceProfileModelSourceProperty -> String)
-> ([InferenceProfileModelSourceProperty] -> ShowS)
-> Show InferenceProfileModelSourceProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> InferenceProfileModelSourceProperty -> ShowS
showsPrec :: Int -> InferenceProfileModelSourceProperty -> ShowS
$cshow :: InferenceProfileModelSourceProperty -> String
show :: InferenceProfileModelSourceProperty -> String
$cshowList :: [InferenceProfileModelSourceProperty] -> ShowS
showList :: [InferenceProfileModelSourceProperty] -> ShowS
Prelude.Show)
mkInferenceProfileModelSourceProperty ::
  Value Prelude.Text -> InferenceProfileModelSourceProperty
mkInferenceProfileModelSourceProperty :: Value Text -> InferenceProfileModelSourceProperty
mkInferenceProfileModelSourceProperty Value Text
copyFrom
  = InferenceProfileModelSourceProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), copyFrom :: Value Text
copyFrom = Value Text
copyFrom}
instance ToResourceProperties InferenceProfileModelSourceProperty where
  toResourceProperties :: InferenceProfileModelSourceProperty -> ResourceProperties
toResourceProperties InferenceProfileModelSourceProperty {()
Value Text
haddock_workaround_ :: InferenceProfileModelSourceProperty -> ()
copyFrom :: InferenceProfileModelSourceProperty -> Value Text
haddock_workaround_ :: ()
copyFrom :: Value Text
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::Bedrock::ApplicationInferenceProfile.InferenceProfileModelSource",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"CopyFrom" 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
copyFrom]}
instance JSON.ToJSON InferenceProfileModelSourceProperty where
  toJSON :: InferenceProfileModelSourceProperty -> Value
toJSON InferenceProfileModelSourceProperty {()
Value Text
haddock_workaround_ :: InferenceProfileModelSourceProperty -> ()
copyFrom :: InferenceProfileModelSourceProperty -> Value Text
haddock_workaround_ :: ()
copyFrom :: Value Text
..}
    = [(Key, Value)] -> Value
JSON.object [Key
"CopyFrom" 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
copyFrom]
instance Property "CopyFrom" InferenceProfileModelSourceProperty where
  type PropertyType "CopyFrom" InferenceProfileModelSourceProperty = Value Prelude.Text
  set :: PropertyType "CopyFrom" InferenceProfileModelSourceProperty
-> InferenceProfileModelSourceProperty
-> InferenceProfileModelSourceProperty
set PropertyType "CopyFrom" InferenceProfileModelSourceProperty
newValue InferenceProfileModelSourceProperty {()
Value Text
haddock_workaround_ :: InferenceProfileModelSourceProperty -> ()
copyFrom :: InferenceProfileModelSourceProperty -> Value Text
haddock_workaround_ :: ()
copyFrom :: Value Text
..}
    = InferenceProfileModelSourceProperty {copyFrom :: Value Text
copyFrom = PropertyType "CopyFrom" InferenceProfileModelSourceProperty
Value Text
newValue, ()
haddock_workaround_ :: ()
haddock_workaround_ :: ()
..}