packages feed

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

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ForeignFunctionInterface, JavaScriptFFI #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from webcrypto-2 (webref). Do not edit.
module GHCJS.DOM.JSFFI.Generated.JsonWebKey
       (js_newJsonWebKey, js_setKty, js_getKty, js_setUse, js_getUse, js_setKeyOps, js_getKeyOps, js_setAlg, js_getAlg, js_setExt, js_getExt, js_setCrv, js_getCrv, js_setX, js_getX, js_setY, js_getY, js_setD, js_getD, js_setN, js_getN, js_setE, js_getE, js_setP, js_getP, js_setQ, js_getQ, js_setDp, js_getDp, js_setDq, js_getDq, js_setQi, js_getQi, js_setOth, js_getOth, js_setK, js_getK, js_setPub, js_getPub, js_setPriv, js_getPriv, newJsonWebKey, setKty, getKty, getKtyUnsafe, getKtyUnchecked, setUse, getUse, getUseUnsafe, getUseUnchecked, setKeyOps, getKeyOps, getKeyOpsUnsafe, getKeyOpsUnchecked, setAlg, getAlg, getAlgUnsafe, getAlgUnchecked, setExt, getExt, getExtUnsafe, getExtUnchecked, setCrv, getCrv, getCrvUnsafe, getCrvUnchecked, setX, getX, getXUnsafe, getXUnchecked, setY, getY, getYUnsafe, getYUnchecked, setD, getD, getDUnsafe, getDUnchecked, setN, getN, getNUnsafe, getNUnchecked, setE, getE, getEUnsafe, getEUnchecked, setP, getP, getPUnsafe, getPUnchecked, setQ, getQ, getQUnsafe, getQUnchecked, setDp, getDp, getDpUnsafe, getDpUnchecked, setDq, getDq, getDqUnsafe, getDqUnchecked, setQi, getQi, getQiUnsafe, getQiUnchecked, setOth, getOth, getOthUnsafe, getOthUnchecked, setK, getK, getKUnsafe, getKUnchecked, setPub, getPub, getPubUnsafe, getPubUnchecked, setPriv, getPriv, getPrivUnsafe, getPrivUnchecked, JsonWebKey(..), gTypeJsonWebKey)
       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 "(() => { return ({}); })"
        js_newJsonWebKey :: IO JsonWebKey
-- | <https://w3c.github.io/webcrypto/#dfn-JsonWebKey JsonWebKey specification>
newJsonWebKey :: (MonadDOM m) => m JsonWebKey
newJsonWebKey = liftDOM ((js_newJsonWebKey))

foreign import javascript safe "(($1, $2) => { $1[\"kty\"] = $2; })"
        js_setKty :: JsonWebKey -> JSString -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-kty JsonWebKey.kty specification>
setKty :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setKty self val = liftDOM (void ((js_setKty (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"kty\"]; })"
        js_getKty :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-kty JsonWebKey.kty specification>
getKty :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getKty self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getKty (self))))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-kty JsonWebKey.kty specification>
getKtyUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getKtyUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getKty (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-kty JsonWebKey.kty specification>
getKtyUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getKtyUnchecked self = liftDOM ((pFromJSVal <$> (js_getKty (self))))

foreign import javascript safe "(($1, $2) => { $1[\"use\"] = $2; })"
        js_setUse :: JsonWebKey -> JSString -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-use JsonWebKey.use specification>
setUse :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setUse self val = liftDOM (void ((js_setUse (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"use\"]; })"
        js_getUse :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-use JsonWebKey.use specification>
getUse :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getUse self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getUse (self))))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-use JsonWebKey.use specification>
getUseUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getUseUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getUse (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-use JsonWebKey.use specification>
getUseUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getUseUnchecked self = liftDOM ((pFromJSVal <$> (js_getUse (self))))

foreign import javascript safe "(($1, $2) => { $1[\"key_ops\"] = $2; })"
        js_setKeyOps :: JsonWebKey -> JSVal -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-key_ops JsonWebKey.key_ops specification>
setKeyOps :: (MonadDOM m, ToJSString val) => JsonWebKey -> [val] -> m ()
setKeyOps self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setKeyOps (self) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"key_ops\"]; })"
        js_getKeyOps :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-key_ops JsonWebKey.key_ops specification>
getKeyOps :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe [result])
getKeyOps self = liftDOM (((js_getKeyOps (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-key_ops JsonWebKey.key_ops specification>
getKeyOpsUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m [result]
getKeyOpsUnsafe self = liftDOM ((((js_getKeyOps (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-key_ops JsonWebKey.key_ops specification>
getKeyOpsUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m [result]
getKeyOpsUnchecked self = liftDOM (((js_getKeyOps (self)) >>= fromJSValUnchecked))

foreign import javascript safe "(($1, $2) => { $1[\"alg\"] = $2; })"
        js_setAlg :: JsonWebKey -> JSString -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-alg JsonWebKey.alg specification>
setAlg :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setAlg self val = liftDOM (void ((js_setAlg (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"alg\"]; })"
        js_getAlg :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-alg JsonWebKey.alg specification>
getAlg :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getAlg self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getAlg (self))))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-alg JsonWebKey.alg specification>
getAlgUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getAlgUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getAlg (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-alg JsonWebKey.alg specification>
getAlgUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getAlgUnchecked self = liftDOM ((pFromJSVal <$> (js_getAlg (self))))

foreign import javascript safe "(($1, $2) => { $1[\"ext\"] = $2; })"
        js_setExt :: JsonWebKey -> Bool -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-ext JsonWebKey.ext specification>
setExt :: (MonadDOM m) => JsonWebKey -> Bool -> m ()
setExt self val = liftDOM (void ((js_setExt (self) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"ext\"]; })"
        js_getExt :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-ext JsonWebKey.ext specification>
getExt :: (MonadDOM m) => JsonWebKey -> m (Maybe Bool)
getExt self = liftDOM (((js_getExt (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-ext JsonWebKey.ext specification>
getExtUnsafe :: (MonadDOM m, HasCallStack) => JsonWebKey -> m Bool
getExtUnsafe self = liftDOM ((((js_getExt (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-ext JsonWebKey.ext specification>
getExtUnchecked :: (MonadDOM m) => JsonWebKey -> m Bool
getExtUnchecked self = liftDOM ((pFromJSVal <$> (js_getExt (self))))

foreign import javascript safe "(($1, $2) => { $1[\"crv\"] = $2; })"
        js_setCrv :: JsonWebKey -> JSString -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-crv JsonWebKey.crv specification>
setCrv :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setCrv self val = liftDOM (void ((js_setCrv (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"crv\"]; })"
        js_getCrv :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-crv JsonWebKey.crv specification>
getCrv :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getCrv self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getCrv (self))))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-crv JsonWebKey.crv specification>
getCrvUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getCrvUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getCrv (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-crv JsonWebKey.crv specification>
getCrvUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getCrvUnchecked self = liftDOM ((pFromJSVal <$> (js_getCrv (self))))

foreign import javascript safe "(($1, $2) => { $1[\"x\"] = $2; })"
        js_setX :: JsonWebKey -> JSString -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-x JsonWebKey.x specification>
setX :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setX self val = liftDOM (void ((js_setX (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"x\"]; })"
        js_getX :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-x JsonWebKey.x specification>
getX :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getX self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getX (self))))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-x JsonWebKey.x specification>
getXUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getXUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getX (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-x JsonWebKey.x specification>
getXUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getXUnchecked self = liftDOM ((pFromJSVal <$> (js_getX (self))))

foreign import javascript safe "(($1, $2) => { $1[\"y\"] = $2; })"
        js_setY :: JsonWebKey -> JSString -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-y JsonWebKey.y specification>
setY :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setY self val = liftDOM (void ((js_setY (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"y\"]; })"
        js_getY :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-y JsonWebKey.y specification>
getY :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getY self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getY (self))))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-y JsonWebKey.y specification>
getYUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getYUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getY (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-y JsonWebKey.y specification>
getYUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getYUnchecked self = liftDOM ((pFromJSVal <$> (js_getY (self))))

foreign import javascript safe "(($1, $2) => { $1[\"d\"] = $2; })"
        js_setD :: JsonWebKey -> JSString -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-d JsonWebKey.d specification>
setD :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setD self val = liftDOM (void ((js_setD (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"d\"]; })"
        js_getD :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-d JsonWebKey.d specification>
getD :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getD self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getD (self))))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-d JsonWebKey.d specification>
getDUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getDUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getD (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-d JsonWebKey.d specification>
getDUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getDUnchecked self = liftDOM ((pFromJSVal <$> (js_getD (self))))

foreign import javascript safe "(($1, $2) => { $1[\"n\"] = $2; })"
        js_setN :: JsonWebKey -> JSString -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-n JsonWebKey.n specification>
setN :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setN self val = liftDOM (void ((js_setN (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"n\"]; })"
        js_getN :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-n JsonWebKey.n specification>
getN :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getN self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getN (self))))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-n JsonWebKey.n specification>
getNUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getNUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getN (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-n JsonWebKey.n specification>
getNUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getNUnchecked self = liftDOM ((pFromJSVal <$> (js_getN (self))))

foreign import javascript safe "(($1, $2) => { $1[\"e\"] = $2; })"
        js_setE :: JsonWebKey -> JSString -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-e JsonWebKey.e specification>
setE :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setE self val = liftDOM (void ((js_setE (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"e\"]; })"
        js_getE :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-e JsonWebKey.e specification>
getE :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getE self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getE (self))))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-e JsonWebKey.e specification>
getEUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getEUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getE (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-e JsonWebKey.e specification>
getEUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getEUnchecked self = liftDOM ((pFromJSVal <$> (js_getE (self))))

foreign import javascript safe "(($1, $2) => { $1[\"p\"] = $2; })"
        js_setP :: JsonWebKey -> JSString -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-p JsonWebKey.p specification>
setP :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setP self val = liftDOM (void ((js_setP (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"p\"]; })"
        js_getP :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-p JsonWebKey.p specification>
getP :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getP self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getP (self))))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-p JsonWebKey.p specification>
getPUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getPUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getP (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-p JsonWebKey.p specification>
getPUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getPUnchecked self = liftDOM ((pFromJSVal <$> (js_getP (self))))

foreign import javascript safe "(($1, $2) => { $1[\"q\"] = $2; })"
        js_setQ :: JsonWebKey -> JSString -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-q JsonWebKey.q specification>
setQ :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setQ self val = liftDOM (void ((js_setQ (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"q\"]; })"
        js_getQ :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-q JsonWebKey.q specification>
getQ :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getQ self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getQ (self))))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-q JsonWebKey.q specification>
getQUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getQUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getQ (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-q JsonWebKey.q specification>
getQUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getQUnchecked self = liftDOM ((pFromJSVal <$> (js_getQ (self))))

foreign import javascript safe "(($1, $2) => { $1[\"dp\"] = $2; })"
        js_setDp :: JsonWebKey -> JSString -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-dp JsonWebKey.dp specification>
setDp :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setDp self val = liftDOM (void ((js_setDp (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"dp\"]; })"
        js_getDp :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-dp JsonWebKey.dp specification>
getDp :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getDp self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getDp (self))))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-dp JsonWebKey.dp specification>
getDpUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getDpUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getDp (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-dp JsonWebKey.dp specification>
getDpUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getDpUnchecked self = liftDOM ((pFromJSVal <$> (js_getDp (self))))

foreign import javascript safe "(($1, $2) => { $1[\"dq\"] = $2; })"
        js_setDq :: JsonWebKey -> JSString -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-dq JsonWebKey.dq specification>
setDq :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setDq self val = liftDOM (void ((js_setDq (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"dq\"]; })"
        js_getDq :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-dq JsonWebKey.dq specification>
getDq :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getDq self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getDq (self))))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-dq JsonWebKey.dq specification>
getDqUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getDqUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getDq (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-dq JsonWebKey.dq specification>
getDqUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getDqUnchecked self = liftDOM ((pFromJSVal <$> (js_getDq (self))))

foreign import javascript safe "(($1, $2) => { $1[\"qi\"] = $2; })"
        js_setQi :: JsonWebKey -> JSString -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-qi JsonWebKey.qi specification>
setQi :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setQi self val = liftDOM (void ((js_setQi (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"qi\"]; })"
        js_getQi :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-qi JsonWebKey.qi specification>
getQi :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getQi self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getQi (self))))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-qi JsonWebKey.qi specification>
getQiUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getQiUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getQi (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-qi JsonWebKey.qi specification>
getQiUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getQiUnchecked self = liftDOM ((pFromJSVal <$> (js_getQi (self))))

foreign import javascript safe "(($1, $2) => { $1[\"oth\"] = $2; })"
        js_setOth :: JsonWebKey -> JSVal -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-oth JsonWebKey.oth specification>
setOth :: (MonadDOM m) => JsonWebKey -> [RsaOtherPrimesInfo] -> m ()
setOth self val = liftDOM (void (((toJSVal val) >>= \a2' -> js_setOth (self) a2')))

foreign import javascript unsafe "(($1) => { return $1[\"oth\"]; })"
        js_getOth :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-oth JsonWebKey.oth specification>
getOth :: (MonadDOM m) => JsonWebKey -> m (Maybe [RsaOtherPrimesInfo])
getOth self = liftDOM (((js_getOth (self)) >>= fromJSValUnchecked))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-oth JsonWebKey.oth specification>
getOthUnsafe :: (MonadDOM m, HasCallStack) => JsonWebKey -> m [RsaOtherPrimesInfo]
getOthUnsafe self = liftDOM ((((js_getOth (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-oth JsonWebKey.oth specification>
getOthUnchecked :: (MonadDOM m) => JsonWebKey -> m [RsaOtherPrimesInfo]
getOthUnchecked self = liftDOM (((js_getOth (self)) >>= fromJSValUnchecked))

foreign import javascript safe "(($1, $2) => { $1[\"k\"] = $2; })"
        js_setK :: JsonWebKey -> JSString -> IO ()
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-k JsonWebKey.k specification>
setK :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setK self val = liftDOM (void ((js_setK (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"k\"]; })"
        js_getK :: JsonWebKey -> IO JSVal
-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-k JsonWebKey.k specification>
getK :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getK self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getK (self))))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-k JsonWebKey.k specification>
getKUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getKUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getK (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://w3c.github.io/webcrypto/#dom-jsonwebkey-k JsonWebKey.k specification>
getKUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getKUnchecked self = liftDOM ((pFromJSVal <$> (js_getK (self))))

foreign import javascript safe "(($1, $2) => { $1[\"pub\"] = $2; })"
        js_setPub :: JsonWebKey -> JSString -> IO ()
-- | <https://wicg.github.io/webcrypto-modern-algos/#dom-jsonwebkey-pub JsonWebKey.pub specification>
setPub :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setPub self val = liftDOM (void ((js_setPub (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"pub\"]; })"
        js_getPub :: JsonWebKey -> IO JSVal
-- | <https://wicg.github.io/webcrypto-modern-algos/#dom-jsonwebkey-pub JsonWebKey.pub specification>
getPub :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getPub self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getPub (self))))

-- | <https://wicg.github.io/webcrypto-modern-algos/#dom-jsonwebkey-pub JsonWebKey.pub specification>
getPubUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getPubUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getPub (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://wicg.github.io/webcrypto-modern-algos/#dom-jsonwebkey-pub JsonWebKey.pub specification>
getPubUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getPubUnchecked self = liftDOM ((pFromJSVal <$> (js_getPub (self))))

foreign import javascript safe "(($1, $2) => { $1[\"priv\"] = $2; })"
        js_setPriv :: JsonWebKey -> JSString -> IO ()
-- | <https://wicg.github.io/webcrypto-modern-algos/#dom-jsonwebkey-priv JsonWebKey.priv specification>
setPriv :: (MonadDOM m, ToJSString val) => JsonWebKey -> val -> m ()
setPriv self val = liftDOM (void ((js_setPriv (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"priv\"]; })"
        js_getPriv :: JsonWebKey -> IO JSVal
-- | <https://wicg.github.io/webcrypto-modern-algos/#dom-jsonwebkey-priv JsonWebKey.priv specification>
getPriv :: (MonadDOM m, FromJSString result) => JsonWebKey -> m (Maybe result)
getPriv self = liftDOM (((fromMaybeJSString . Nullable) <$> (js_getPriv (self))))

-- | <https://wicg.github.io/webcrypto-modern-algos/#dom-jsonwebkey-priv JsonWebKey.priv specification>
getPrivUnsafe :: (MonadDOM m, HasCallStack, FromJSString result) => JsonWebKey -> m result
getPrivUnsafe self = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_getPriv (self))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://wicg.github.io/webcrypto-modern-algos/#dom-jsonwebkey-priv JsonWebKey.priv specification>
getPrivUnchecked :: (MonadDOM m, FromJSString result) => JsonWebKey -> m result
getPrivUnchecked self = liftDOM ((pFromJSVal <$> (js_getPriv (self))))