jsaddle-dom-0.10.0.0: src/JSDOM/Generated/RTCEncodedAudioFrame.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from webrtc-encoded-transform (webref). Do not edit.
module JSDOM.Generated.RTCEncodedAudioFrame
(newRTCEncodedAudioFrame, getMetadata, getMetadata_, setData, getData, RTCEncodedAudioFrame(..), gTypeRTCEncodedAudioFrame)
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://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame/RTCEncodedAudioFrame MDN RTCEncodedAudioFrame. documentation>
newRTCEncodedAudioFrame :: (MonadDOM m) => RTCEncodedAudioFrame -> Maybe RTCEncodedAudioFrameOptions -> m RTCEncodedAudioFrame
newRTCEncodedAudioFrame originalFrame options = liftDOM (((new (jsg "RTCEncodedAudioFrame") [toJSVal originalFrame, P.maybe (P.return jsUndefined) toJSVal options]) >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame/getMetadata MDN RTCEncodedAudioFrame.getMetadata documentation>
getMetadata :: (MonadDOM m) => RTCEncodedAudioFrame -> m RTCEncodedAudioFrameMetadata
getMetadata self = liftDOM (((self ^. jsf "getMetadata" ()) >>= fromJSValUnchecked))
-- | <https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame/getMetadata MDN RTCEncodedAudioFrame.getMetadata documentation>
getMetadata_ :: (MonadDOM m) => RTCEncodedAudioFrame -> m ()
getMetadata_ self = liftDOM (void (self ^. jsf "getMetadata" ()))
-- | <https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame/data MDN RTCEncodedAudioFrame.data documentation>
setData :: (MonadDOM m, IsArrayBuffer val) => RTCEncodedAudioFrame -> val -> m ()
setData self val = liftDOM (void (self ^. jss "data" (toJSVal val)))
-- | <https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame/data MDN RTCEncodedAudioFrame.data documentation>
getData :: (MonadDOM m) => RTCEncodedAudioFrame -> m ArrayBuffer
getData self = liftDOM (((self ^. js "data") >>= fromJSValUnchecked))