packages feed

ghcjs-dom-javascript-0.10.0.0: src/GHCJS/DOM/JSFFI/Generated/PrivateToken.hs

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ForeignFunctionInterface, JavaScriptFFI #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from trust-token-api (webref). Do not edit.
module GHCJS.DOM.JSFFI.Generated.PrivateToken
       (js_newPrivateToken, js_setVersion, js_getVersion, js_setOperation, js_getOperation, js_setRefreshPolicy, js_getRefreshPolicy, js_setIssuers, js_getIssuers, 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 GHCJS.Types (JSVal, JSString)
import GHCJS.Foreign (jsUndefined, jsNull)
import GHCJS.DOM.Types
import qualified GHCJS.DOM.Types as Types
import GHCJS.DOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import GHCJS.DOM.JSFFI.Generated.Enums

foreign import javascript safe "(($1, $2) => { return ({\"version\": $1, \"operation\": $2}); })"
        js_newPrivateToken :: JSVal -> JSVal -> IO PrivateToken
-- | <https://wicg.github.io/trust-token-api/#dictdef-privatetoken PrivateToken specification>
newPrivateToken :: (MonadDOM m) => TokenVersion -> OperationType -> m PrivateToken
newPrivateToken version operation = liftDOM (((toJSVal version) >>= \a1' -> (toJSVal operation) >>= \a2' -> js_newPrivateToken a1' a2'))

foreign import javascript safe "(($1, $2) => { $1[\"version\"] = $2; })"
        js_setVersion :: PrivateToken -> JSVal -> IO ()
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-version PrivateToken.version specification>
setVersion :: (MonadDOM m) => PrivateToken -> TokenVersion -> m ()
setVersion self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setVersion (self) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"version\"]; })"
        js_getVersion :: PrivateToken -> IO JSVal
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-version PrivateToken.version specification>
getVersion :: (MonadDOM m) => PrivateToken -> m TokenVersion
getVersion self = liftDOM (((js_getVersion (self)) >>= fromJSValUnchecked))

foreign import javascript safe "(($1, $2) => { $1[\"operation\"] = $2; })"
        js_setOperation :: PrivateToken -> JSVal -> IO ()
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-operation PrivateToken.operation specification>
setOperation :: (MonadDOM m) => PrivateToken -> OperationType -> m ()
setOperation self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setOperation (self) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"operation\"]; })"
        js_getOperation :: PrivateToken -> IO JSVal
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-operation PrivateToken.operation specification>
getOperation :: (MonadDOM m) => PrivateToken -> m OperationType
getOperation self = liftDOM (((js_getOperation (self)) >>= fromJSValUnchecked))

foreign import javascript safe "(($1, $2) => { $1[\"refreshPolicy\"] = $2; })"
        js_setRefreshPolicy :: PrivateToken -> JSVal -> IO ()
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-refreshpolicy PrivateToken.refreshPolicy specification>
setRefreshPolicy :: (MonadDOM m) => PrivateToken -> RefreshPolicy -> m ()
setRefreshPolicy self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setRefreshPolicy (self) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"refreshPolicy\"]; })"
        js_getRefreshPolicy :: PrivateToken -> IO JSVal
-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-refreshpolicy PrivateToken.refreshPolicy specification>
getRefreshPolicy :: (MonadDOM m) => PrivateToken -> m (Maybe RefreshPolicy)
getRefreshPolicy self = liftDOM (((js_getRefreshPolicy (self)) >>= fromJSValUnchecked))

-- | <https://wicg.github.io/trust-token-api/#dom-privatetoken-refreshpolicy PrivateToken.refreshPolicy specification>
getRefreshPolicyUnsafe :: (MonadDOM m, HasCallStack) => PrivateToken -> m RefreshPolicy
getRefreshPolicyUnsafe self = liftDOM ((((js_getRefreshPolicy (self)) >>= 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 ((pFromJSVal <$> (js_getRefreshPolicy (self))))

foreign import javascript safe "(($1, $2) => { $1[\"issuers\"] = $2; })"
        js_setIssuers :: PrivateToken -> JSVal -> IO ()
-- | <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 (((toJSVal val) >>= \a2' -> js_setIssuers (self) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"issuers\"]; })"
        js_getIssuers :: PrivateToken -> IO JSVal
-- | <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 (((js_getIssuers (self)) >>= 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 ((((js_getIssuers (self)) >>= 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 (((js_getIssuers (self)) >>= fromJSValUnchecked))