jsaddle-dom-0.10.0.0: src/JSDOM/Generated/PrivateToken.hs
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from trust-token-api (webref). Do not edit.
module JSDOM.Generated.PrivateToken
(newPrivateToken, setVersion, getVersion, setOperation, getOperation, setRefreshPolicy, getRefreshPolicy, getRefreshPolicyUnsafe, getRefreshPolicyUnchecked, setIssuers, getIssuers, getIssuersUnsafe, getIssuersUnchecked, PrivateToken(..), gTypePrivateToken)
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://wicg.github.io/trust-token-api/#dictdef-privatetoken PrivateToken specification>
newPrivateToken :: (MonadDOM m) => TokenVersion -> OperationType -> m PrivateToken
newPrivateToken version operation = liftDOM ((((new (jsg "Object") () >>= \o -> (o ^. jss "version" (toJSVal version)) P.>> (o ^. jss "operation" (toJSVal operation)) P.>> P.return o)) >>= fromJSValUnchecked))
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-version PrivateToken.version specification>
setVersion :: (MonadDOM m) => PrivateToken -> TokenVersion -> m ()
setVersion self val = liftDOM (void (self ^. jss "version" (toJSVal val)))
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-version PrivateToken.version specification>
getVersion :: (MonadDOM m) => PrivateToken -> m TokenVersion
getVersion self = liftDOM (((self ^. js "version") >>= fromJSValUnchecked))
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-operation PrivateToken.operation specification>
setOperation :: (MonadDOM m) => PrivateToken -> OperationType -> m ()
setOperation self val = liftDOM (void (self ^. jss "operation" (toJSVal val)))
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-operation PrivateToken.operation specification>
getOperation :: (MonadDOM m) => PrivateToken -> m OperationType
getOperation self = liftDOM (((self ^. js "operation") >>= fromJSValUnchecked))
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-refreshpolicy PrivateToken.refreshPolicy specification>
setRefreshPolicy :: (MonadDOM m) => PrivateToken -> RefreshPolicy -> m ()
setRefreshPolicy self val = liftDOM (void (self ^. jss "refreshPolicy" (toJSVal val)))
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-refreshpolicy PrivateToken.refreshPolicy specification>
getRefreshPolicy :: (MonadDOM m) => PrivateToken -> m (Maybe RefreshPolicy)
getRefreshPolicy self = liftDOM (((self ^. js "refreshPolicy") >>= fromJSValUnchecked))
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-refreshpolicy PrivateToken.refreshPolicy specification>
getRefreshPolicyUnsafe :: (MonadDOM m, HasCallStack) => PrivateToken -> m RefreshPolicy
getRefreshPolicyUnsafe self = liftDOM ((((self ^. js "refreshPolicy") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-refreshpolicy PrivateToken.refreshPolicy specification>
getRefreshPolicyUnchecked :: (MonadDOM m) => PrivateToken -> m RefreshPolicy
getRefreshPolicyUnchecked self = liftDOM (((self ^. js "refreshPolicy") >>= fromJSValUnchecked))
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-issuers PrivateToken.issuers specification>
setIssuers :: (MonadDOM m, ToJSString val) => PrivateToken -> [val] -> m ()
setIssuers self val = liftDOM (void (self ^. jss "issuers" (toJSVal val)))
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-issuers PrivateToken.issuers specification>
getIssuers :: (MonadDOM m, FromJSString result) => PrivateToken -> m (Maybe [result])
getIssuers self = liftDOM (((self ^. js "issuers") >>= fromJSValUnchecked))
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-issuers PrivateToken.issuers specification>
getIssuersUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => PrivateToken -> m [result]
getIssuersUnsafe self = liftDOM ((((self ^. js "issuers") >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-issuers PrivateToken.issuers specification>
getIssuersUnchecked :: (MonadDOM m, FromJSString result) => PrivateToken -> m [result]
getIssuersUnchecked self = liftDOM (((self ^. js "issuers") >>= fromJSValUnchecked))