packages feed

jsaddle-dom-0.10.0.0: src/JSDOM/Generated/EncodedVideoChunkMetadata.hs

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from webcodecs (webref). Do not edit.
module JSDOM.Generated.EncodedVideoChunkMetadata
       (newEncodedVideoChunkMetadata, setDecoderConfig, getDecoderConfig, getDecoderConfigUnsafe, getDecoderConfigUnchecked, setSvc, getSvc, getSvcUnsafe, getSvcUnchecked, setAlphaSideData, getAlphaSideData, getAlphaSideDataUnsafe, getAlphaSideDataUnchecked, EncodedVideoChunkMetadata(..), gTypeEncodedVideoChunkMetadata)
       where
import Prelude ((.), (==), (>>=), (<$>), (++), Bool(..), Maybe(..), IO, Int, Word, Double, Float)
import qualified Prelude as P
import Control.Monad (void)
import Control.Lens.Operators ((^.))
import Language.Javascript.JSaddle (JSM, JSVal, JSString, toJSVal, valToBool, valToNumber, js, jss, jsf, jsg, new, function, asyncFunction, jsUndefined, jsNull)
import JSDOM.Types
import qualified JSDOM.Types as Types
import JSDOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import JSDOM.Generated.Enums

-- | <https://w3c.github.io/webcodecs/#dictdef-encodedvideochunkmetadata EncodedVideoChunkMetadata specification>
newEncodedVideoChunkMetadata :: (MonadDOM m) => m EncodedVideoChunkMetadata
newEncodedVideoChunkMetadata = liftDOM ((((new (jsg "Object") () >>= \o -> P.return o)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-encodedvideochunkmetadata-decoderconfig EncodedVideoChunkMetadata.decoderConfig specification>
setDecoderConfig :: (MonadDOM m) => EncodedVideoChunkMetadata -> VideoDecoderConfig -> m ()
setDecoderConfig self val = liftDOM (void (self ^. jss "decoderConfig" (toJSVal val)))

-- | <https://w3c.github.io/webcodecs/#dom-encodedvideochunkmetadata-decoderconfig EncodedVideoChunkMetadata.decoderConfig specification>
getDecoderConfig :: (MonadDOM m) => EncodedVideoChunkMetadata -> m (Maybe VideoDecoderConfig)
getDecoderConfig self = liftDOM (((self ^. js "decoderConfig") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-encodedvideochunkmetadata-decoderconfig EncodedVideoChunkMetadata.decoderConfig specification>
getDecoderConfigUnsafe :: (MonadDOM m, HasCallStack) => EncodedVideoChunkMetadata -> m VideoDecoderConfig
getDecoderConfigUnsafe self = liftDOM ((((self ^. js "decoderConfig") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/#dom-encodedvideochunkmetadata-decoderconfig EncodedVideoChunkMetadata.decoderConfig specification>
getDecoderConfigUnchecked :: (MonadDOM m) => EncodedVideoChunkMetadata -> m VideoDecoderConfig
getDecoderConfigUnchecked self = liftDOM (((self ^. js "decoderConfig") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-encodedvideochunkmetadata-svc EncodedVideoChunkMetadata.svc specification>
setSvc :: (MonadDOM m) => EncodedVideoChunkMetadata -> SvcOutputMetadata -> m ()
setSvc self val = liftDOM (void (self ^. jss "svc" (toJSVal val)))

-- | <https://w3c.github.io/webcodecs/#dom-encodedvideochunkmetadata-svc EncodedVideoChunkMetadata.svc specification>
getSvc :: (MonadDOM m) => EncodedVideoChunkMetadata -> m (Maybe SvcOutputMetadata)
getSvc self = liftDOM (((self ^. js "svc") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-encodedvideochunkmetadata-svc EncodedVideoChunkMetadata.svc specification>
getSvcUnsafe :: (MonadDOM m, HasCallStack) => EncodedVideoChunkMetadata -> m SvcOutputMetadata
getSvcUnsafe self = liftDOM ((((self ^. js "svc") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/#dom-encodedvideochunkmetadata-svc EncodedVideoChunkMetadata.svc specification>
getSvcUnchecked :: (MonadDOM m) => EncodedVideoChunkMetadata -> m SvcOutputMetadata
getSvcUnchecked self = liftDOM (((self ^. js "svc") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-encodedvideochunkmetadata-alphasidedata EncodedVideoChunkMetadata.alphaSideData specification>
setAlphaSideData :: (MonadDOM m, IsBufferSource val) => EncodedVideoChunkMetadata -> val -> m ()
setAlphaSideData self val = liftDOM (void (self ^. jss "alphaSideData" (toJSVal val)))

-- | <https://w3c.github.io/webcodecs/#dom-encodedvideochunkmetadata-alphasidedata EncodedVideoChunkMetadata.alphaSideData specification>
getAlphaSideData :: (MonadDOM m) => EncodedVideoChunkMetadata -> m (Maybe BufferSource)
getAlphaSideData self = liftDOM (((self ^. js "alphaSideData") >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcodecs/#dom-encodedvideochunkmetadata-alphasidedata EncodedVideoChunkMetadata.alphaSideData specification>
getAlphaSideDataUnsafe :: (MonadDOM m, HasCallStack) => EncodedVideoChunkMetadata -> m BufferSource
getAlphaSideDataUnsafe self = liftDOM ((((self ^. js "alphaSideData") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcodecs/#dom-encodedvideochunkmetadata-alphasidedata EncodedVideoChunkMetadata.alphaSideData specification>
getAlphaSideDataUnchecked :: (MonadDOM m) => EncodedVideoChunkMetadata -> m BufferSource
getAlphaSideDataUnchecked self = liftDOM (((self ^. js "alphaSideData") >>= fromJSValUnchecked))