module Stratosphere.Bedrock.DataAutomationProject.VideoStandardExtractionProperty (
        module Exports, VideoStandardExtractionProperty(..),
        mkVideoStandardExtractionProperty
    ) where
import qualified Data.Aeson as JSON
import qualified Stratosphere.Prelude as Prelude
import Stratosphere.Property
import {-# SOURCE #-} Stratosphere.Bedrock.DataAutomationProject.VideoBoundingBoxProperty as Exports
import {-# SOURCE #-} Stratosphere.Bedrock.DataAutomationProject.VideoExtractionCategoryProperty as Exports
import Stratosphere.ResourceProperties
data VideoStandardExtractionProperty
  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-dataautomationproject-videostandardextraction.html>
    VideoStandardExtractionProperty {VideoStandardExtractionProperty -> ()
haddock_workaround_ :: (),
                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-dataautomationproject-videostandardextraction.html#cfn-bedrock-dataautomationproject-videostandardextraction-boundingbox>
                                     VideoStandardExtractionProperty -> VideoBoundingBoxProperty
boundingBox :: VideoBoundingBoxProperty,
                                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-dataautomationproject-videostandardextraction.html#cfn-bedrock-dataautomationproject-videostandardextraction-category>
                                     VideoStandardExtractionProperty -> VideoExtractionCategoryProperty
category :: VideoExtractionCategoryProperty}
  deriving stock (VideoStandardExtractionProperty
-> VideoStandardExtractionProperty -> Bool
(VideoStandardExtractionProperty
 -> VideoStandardExtractionProperty -> Bool)
-> (VideoStandardExtractionProperty
    -> VideoStandardExtractionProperty -> Bool)
-> Eq VideoStandardExtractionProperty
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: VideoStandardExtractionProperty
-> VideoStandardExtractionProperty -> Bool
== :: VideoStandardExtractionProperty
-> VideoStandardExtractionProperty -> Bool
$c/= :: VideoStandardExtractionProperty
-> VideoStandardExtractionProperty -> Bool
/= :: VideoStandardExtractionProperty
-> VideoStandardExtractionProperty -> Bool
Prelude.Eq, Int -> VideoStandardExtractionProperty -> ShowS
[VideoStandardExtractionProperty] -> ShowS
VideoStandardExtractionProperty -> String
(Int -> VideoStandardExtractionProperty -> ShowS)
-> (VideoStandardExtractionProperty -> String)
-> ([VideoStandardExtractionProperty] -> ShowS)
-> Show VideoStandardExtractionProperty
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> VideoStandardExtractionProperty -> ShowS
showsPrec :: Int -> VideoStandardExtractionProperty -> ShowS
$cshow :: VideoStandardExtractionProperty -> String
show :: VideoStandardExtractionProperty -> String
$cshowList :: [VideoStandardExtractionProperty] -> ShowS
showList :: [VideoStandardExtractionProperty] -> ShowS
Prelude.Show)
mkVideoStandardExtractionProperty ::
  VideoBoundingBoxProperty
  -> VideoExtractionCategoryProperty
     -> VideoStandardExtractionProperty
mkVideoStandardExtractionProperty :: VideoBoundingBoxProperty
-> VideoExtractionCategoryProperty
-> VideoStandardExtractionProperty
mkVideoStandardExtractionProperty VideoBoundingBoxProperty
boundingBox VideoExtractionCategoryProperty
category
  = VideoStandardExtractionProperty
      {haddock_workaround_ :: ()
haddock_workaround_ = (), boundingBox :: VideoBoundingBoxProperty
boundingBox = VideoBoundingBoxProperty
boundingBox,
       category :: VideoExtractionCategoryProperty
category = VideoExtractionCategoryProperty
category}
instance ToResourceProperties VideoStandardExtractionProperty where
  toResourceProperties :: VideoStandardExtractionProperty -> ResourceProperties
toResourceProperties VideoStandardExtractionProperty {()
VideoBoundingBoxProperty
VideoExtractionCategoryProperty
haddock_workaround_ :: VideoStandardExtractionProperty -> ()
boundingBox :: VideoStandardExtractionProperty -> VideoBoundingBoxProperty
category :: VideoStandardExtractionProperty -> VideoExtractionCategoryProperty
haddock_workaround_ :: ()
boundingBox :: VideoBoundingBoxProperty
category :: VideoExtractionCategoryProperty
..}
    = ResourceProperties
        {awsType :: Text
awsType = Text
"AWS::Bedrock::DataAutomationProject.VideoStandardExtraction",
         supportsTags :: Bool
supportsTags = Bool
Prelude.False,
         properties :: Object
properties = [Key
"BoundingBox" Key -> VideoBoundingBoxProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= VideoBoundingBoxProperty
boundingBox,
                       Key
"Category" Key -> VideoExtractionCategoryProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= VideoExtractionCategoryProperty
category]}
instance JSON.ToJSON VideoStandardExtractionProperty where
  toJSON :: VideoStandardExtractionProperty -> Value
toJSON VideoStandardExtractionProperty {()
VideoBoundingBoxProperty
VideoExtractionCategoryProperty
haddock_workaround_ :: VideoStandardExtractionProperty -> ()
boundingBox :: VideoStandardExtractionProperty -> VideoBoundingBoxProperty
category :: VideoStandardExtractionProperty -> VideoExtractionCategoryProperty
haddock_workaround_ :: ()
boundingBox :: VideoBoundingBoxProperty
category :: VideoExtractionCategoryProperty
..}
    = [(Key, Value)] -> Value
JSON.object
        [Key
"BoundingBox" Key -> VideoBoundingBoxProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= VideoBoundingBoxProperty
boundingBox, Key
"Category" Key -> VideoExtractionCategoryProperty -> (Key, Value)
forall v. ToJSON v => Key -> v -> (Key, Value)
forall e kv v. (KeyValue e kv, ToJSON v) => Key -> v -> kv
JSON..= VideoExtractionCategoryProperty
category]
instance Property "BoundingBox" VideoStandardExtractionProperty where
  type PropertyType "BoundingBox" VideoStandardExtractionProperty = VideoBoundingBoxProperty
  set :: PropertyType "BoundingBox" VideoStandardExtractionProperty
-> VideoStandardExtractionProperty
-> VideoStandardExtractionProperty
set PropertyType "BoundingBox" VideoStandardExtractionProperty
newValue VideoStandardExtractionProperty {()
VideoBoundingBoxProperty
VideoExtractionCategoryProperty
haddock_workaround_ :: VideoStandardExtractionProperty -> ()
boundingBox :: VideoStandardExtractionProperty -> VideoBoundingBoxProperty
category :: VideoStandardExtractionProperty -> VideoExtractionCategoryProperty
haddock_workaround_ :: ()
boundingBox :: VideoBoundingBoxProperty
category :: VideoExtractionCategoryProperty
..}
    = VideoStandardExtractionProperty {boundingBox :: VideoBoundingBoxProperty
boundingBox = PropertyType "BoundingBox" VideoStandardExtractionProperty
VideoBoundingBoxProperty
newValue, ()
VideoExtractionCategoryProperty
haddock_workaround_ :: ()
category :: VideoExtractionCategoryProperty
haddock_workaround_ :: ()
category :: VideoExtractionCategoryProperty
..}
instance Property "Category" VideoStandardExtractionProperty where
  type PropertyType "Category" VideoStandardExtractionProperty = VideoExtractionCategoryProperty
  set :: PropertyType "Category" VideoStandardExtractionProperty
-> VideoStandardExtractionProperty
-> VideoStandardExtractionProperty
set PropertyType "Category" VideoStandardExtractionProperty
newValue VideoStandardExtractionProperty {()
VideoBoundingBoxProperty
VideoExtractionCategoryProperty
haddock_workaround_ :: VideoStandardExtractionProperty -> ()
boundingBox :: VideoStandardExtractionProperty -> VideoBoundingBoxProperty
category :: VideoStandardExtractionProperty -> VideoExtractionCategoryProperty
haddock_workaround_ :: ()
boundingBox :: VideoBoundingBoxProperty
category :: VideoExtractionCategoryProperty
..}
    = VideoStandardExtractionProperty {category :: VideoExtractionCategoryProperty
category = PropertyType "Category" VideoStandardExtractionProperty
VideoExtractionCategoryProperty
newValue, ()
VideoBoundingBoxProperty
haddock_workaround_ :: ()
boundingBox :: VideoBoundingBoxProperty
haddock_workaround_ :: ()
boundingBox :: VideoBoundingBoxProperty
..}