packages feed

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

{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ForeignFunctionInterface, JavaScriptFFI #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
-- | Generated by dom-gen from html (webref). Do not edit.
module GHCJS.DOM.JSFFI.Generated.Window
       (js_alertNoMessage, js_alert, js_blur, js_cancelIdleCallback, js_captureEvents, js_close, js_confirm, js_focus, js_getComputedStyle, js_getSelection, js_matchMedia, js_moveBy, js_moveTo, js_open, js_postMessage, js_postMessageOptions, js_print, js_prompt, js_releaseEvents, js_requestIdleCallback, js_resizeBy, js_resizeTo, js_scrollOpt, js_scroll, js_scrollByOpt, js_scrollBy, js_scrollToOpt, js_scrollTo, js_stop, js_getWindow, js_getSelf, js_getDocument, js_setName, js_getName, js_getLocation, js_getHistory, js_getNavigation, js_getCustomElements, js_getLocationbar, js_getMenubar, js_getPersonalbar, js_getScrollbars, js_getStatusbar, js_getToolbar, js_setStatus, js_getStatus, js_getClosed, js_getFrames, js_getLength, js_getTop, js_setOpener, js_getOpener, js_getParent, js_getFrameElement, js_getNavigator, js_getClientInformation, js_getOriginAgentCluster, js_getCookieStore, js_getScreen, js_getVisualViewport, js_getInnerWidth, js_getInnerHeight, js_getScrollX, js_getPageXOffset, js_getScrollY, js_getPageYOffset, js_getScreenX, js_getScreenLeft, js_getScreenY, js_getScreenTop, js_getOuterWidth, js_getOuterHeight, js_getDevicePixelRatio, js_getDocumentPictureInPicture, js_getEvent, js_getExternal, js_getSpeechSynthesis, alertNoMessage, alert, blur, cancelIdleCallback, captureEvents, close, confirm, confirm_, focus, getComputedStyle, getComputedStyle_, getSelection, getSelection_, getSelectionUnsafe, getSelectionUnchecked, matchMedia, matchMedia_, moveBy, moveTo, open, open_, openUnsafe, openUnchecked, postMessage, postMessageOptions, print, prompt, prompt_, promptUnsafe, promptUnchecked, releaseEvents, requestIdleCallback, requestIdleCallback_, resizeBy, resizeTo, scrollOpt, scrollOpt_, scroll, scroll_, scrollByOpt, scrollByOpt_, scrollBy, scrollBy_, scrollToOpt, scrollToOpt_, scrollTo, scrollTo_, stop, getWindow, getSelf, getDocument, setName, getName, getLocation, getHistory, getNavigation, getCustomElements, getLocationbar, getMenubar, getPersonalbar, getScrollbars, getStatusbar, getToolbar, setStatus, getStatus, getClosed, getFrames, getLength, getTop, getTopUnsafe, getTopUnchecked, setOpener, getOpener, getParent, getParentUnsafe, getParentUnchecked, getFrameElement, getFrameElementUnsafe, getFrameElementUnchecked, getNavigator, getClientInformation, getOriginAgentCluster, getCookieStore, getScreen, getVisualViewport, getVisualViewportUnsafe, getVisualViewportUnchecked, getInnerWidth, getInnerHeight, getScrollX, getPageXOffset, getScrollY, getPageYOffset, getScreenX, getScreenLeft, getScreenY, getScreenTop, getOuterWidth, getOuterHeight, getDevicePixelRatio, getDocumentPictureInPicture, getEvent, getExternal, getSpeechSynthesis, deviceOrientation, deviceorientationabsolute, deviceMotion, clipboardchange, Window(..), gTypeWindow)
       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) => { return $1[\"alert\"](); })"
        js_alertNoMessage :: Window -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/alert MDN Window.alert documentation>
alertNoMessage :: (MonadDOM m) => Window -> m ()
alertNoMessage self = liftDOM (void ((js_alertNoMessage (self))))

foreign import javascript safe "(($1, $2) => { return $1[\"alert\"]($2); })"
        js_alert :: Window -> JSString -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/alert MDN Window.alert documentation>
alert :: (MonadDOM m, ToJSString message) => Window -> message -> m ()
alert self message = liftDOM (void ((js_alert (self) (toJSString message))))

foreign import javascript safe "(($1) => { return $1[\"blur\"](); })"
        js_blur :: Window -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/blur MDN Window.blur documentation>
blur :: (MonadDOM m) => Window -> m ()
blur self = liftDOM (void ((js_blur (self))))

foreign import javascript safe "(($1, $2) => { return $1[\"cancelIdleCallback\"]($2); })"
        js_cancelIdleCallback :: Window -> Word -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/cancelIdleCallback MDN Window.cancelIdleCallback documentation>
cancelIdleCallback :: (MonadDOM m) => Window -> Word -> m ()
cancelIdleCallback self handle = liftDOM (void ((js_cancelIdleCallback (self) (handle))))

foreign import javascript safe "(($1) => { return $1[\"captureEvents\"](); })"
        js_captureEvents :: Window -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/captureEvents MDN Window.captureEvents documentation>
captureEvents :: (MonadDOM m) => Window -> m ()
captureEvents self = liftDOM (void ((js_captureEvents (self))))

foreign import javascript safe "(($1) => { return $1[\"close\"](); })"
        js_close :: Window -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/close MDN Window.close documentation>
close :: (MonadDOM m) => Window -> m ()
close self = liftDOM (void ((js_close (self))))

foreign import javascript safe "(($1, $2) => { return $1[\"confirm\"]($2); })"
        js_confirm :: Window -> (Optional JSString) -> IO Bool
-- | <https://developer.mozilla.org/docs/Web/API/Window/confirm MDN Window.confirm documentation>
confirm :: (MonadDOM m, ToJSString message) => Window -> Maybe message -> m Bool
confirm self message = liftDOM ((js_confirm (self) (toOptionalJSString message)))

-- | <https://developer.mozilla.org/docs/Web/API/Window/confirm MDN Window.confirm documentation>
confirm_ :: (MonadDOM m, ToJSString message) => Window -> Maybe message -> m ()
confirm_ self message = liftDOM (void ((js_confirm (self) (toOptionalJSString message))))

foreign import javascript safe "(($1) => { return $1[\"focus\"](); })"
        js_focus :: Window -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/focus MDN Window.focus documentation>
focus :: (MonadDOM m) => Window -> m ()
focus self = liftDOM (void ((js_focus (self))))

foreign import javascript safe "(($1, $2, $3) => { return $1[\"getComputedStyle\"]($2, $3); })"
        js_getComputedStyle :: Window -> Element -> (Nullable JSString) -> IO CSSStyleProperties
-- | <https://developer.mozilla.org/docs/Web/API/Window/getComputedStyle MDN Window.getComputedStyle documentation>
getComputedStyle :: (MonadDOM m, IsElement elt, ToJSString pseudoElt) => Window -> elt -> Maybe pseudoElt -> m CSSStyleProperties
getComputedStyle self elt pseudoElt = liftDOM ((js_getComputedStyle (self) (Types.toElement elt) (toMaybeJSString pseudoElt)))

-- | <https://developer.mozilla.org/docs/Web/API/Window/getComputedStyle MDN Window.getComputedStyle documentation>
getComputedStyle_ :: (MonadDOM m, IsElement elt, ToJSString pseudoElt) => Window -> elt -> Maybe pseudoElt -> m ()
getComputedStyle_ self elt pseudoElt = liftDOM (void ((js_getComputedStyle (self) (Types.toElement elt) (toMaybeJSString pseudoElt))))

foreign import javascript safe "(($1) => { return $1[\"getSelection\"](); })"
        js_getSelection :: Window -> IO JSVal
-- | <https://developer.mozilla.org/docs/Web/API/Window/getSelection MDN Window.getSelection documentation>
getSelection :: (MonadDOM m) => Window -> m (Maybe Selection)
getSelection self = liftDOM (((js_getSelection (self)) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/Window/getSelection MDN Window.getSelection documentation>
getSelection_ :: (MonadDOM m) => Window -> m ()
getSelection_ self = liftDOM (void ((js_getSelection (self))))

-- | <https://developer.mozilla.org/docs/Web/API/Window/getSelection MDN Window.getSelection documentation>
getSelectionUnsafe :: (MonadDOM m, HasCallStack) => Window -> m Selection
getSelectionUnsafe self = liftDOM ((((js_getSelection (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://developer.mozilla.org/docs/Web/API/Window/getSelection MDN Window.getSelection documentation>
getSelectionUnchecked :: (MonadDOM m) => Window -> m Selection
getSelectionUnchecked self = liftDOM ((pFromJSVal <$> (js_getSelection (self))))

foreign import javascript safe "(($1, $2) => { return $1[\"matchMedia\"]($2); })"
        js_matchMedia :: Window -> JSString -> IO MediaQueryList
-- | <https://developer.mozilla.org/docs/Web/API/Window/matchMedia MDN Window.matchMedia documentation>
matchMedia :: (MonadDOM m, ToJSString query) => Window -> query -> m MediaQueryList
matchMedia self query = liftDOM ((js_matchMedia (self) (toJSString query)))

-- | <https://developer.mozilla.org/docs/Web/API/Window/matchMedia MDN Window.matchMedia documentation>
matchMedia_ :: (MonadDOM m, ToJSString query) => Window -> query -> m ()
matchMedia_ self query = liftDOM (void ((js_matchMedia (self) (toJSString query))))

foreign import javascript safe "(($1, $2, $3) => { return $1[\"moveBy\"]($2, $3); })"
        js_moveBy :: Window -> Int -> Int -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/moveBy MDN Window.moveBy documentation>
moveBy :: (MonadDOM m) => Window -> Int -> Int -> m ()
moveBy self x y = liftDOM (void ((js_moveBy (self) (x) (y))))

foreign import javascript safe "(($1, $2, $3) => { return $1[\"moveTo\"]($2, $3); })"
        js_moveTo :: Window -> Int -> Int -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/moveTo MDN Window.moveTo documentation>
moveTo :: (MonadDOM m) => Window -> Int -> Int -> m ()
moveTo self x y = liftDOM (void ((js_moveTo (self) (x) (y))))

foreign import javascript safe "(($1, $2, $3, $4) => { return $1[\"open\"]($2, $3, $4); })"
        js_open :: Window -> (Optional JSString) -> (Optional JSString) -> (Optional JSString) -> IO JSVal
-- | <https://developer.mozilla.org/docs/Web/API/Window/open MDN Window.open documentation>
open :: (MonadDOM m, ToJSString url, ToJSString target, ToJSString features) => Window -> Maybe url -> Maybe target -> Maybe features -> m (Maybe Window)
open self url target features = liftDOM (((js_open (self) (toOptionalJSString url) (toOptionalJSString target) (toOptionalJSString features)) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/Window/open MDN Window.open documentation>
open_ :: (MonadDOM m, ToJSString url, ToJSString target, ToJSString features) => Window -> Maybe url -> Maybe target -> Maybe features -> m ()
open_ self url target features = liftDOM (void ((js_open (self) (toOptionalJSString url) (toOptionalJSString target) (toOptionalJSString features))))

-- | <https://developer.mozilla.org/docs/Web/API/Window/open MDN Window.open documentation>
openUnsafe :: (MonadDOM m, ToJSString url, ToJSString target, ToJSString features, HasCallStack) => Window -> Maybe url -> Maybe target -> Maybe features -> m Window
openUnsafe self url target features = liftDOM ((((js_open (self) (toOptionalJSString url) (toOptionalJSString target) (toOptionalJSString features)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://developer.mozilla.org/docs/Web/API/Window/open MDN Window.open documentation>
openUnchecked :: (MonadDOM m, ToJSString url, ToJSString target, ToJSString features) => Window -> Maybe url -> Maybe target -> Maybe features -> m Window
openUnchecked self url target features = liftDOM ((pFromJSVal <$> (js_open (self) (toOptionalJSString url) (toOptionalJSString target) (toOptionalJSString features))))

foreign import javascript safe "(($1, $2, $3, $4) => { return $1[\"postMessage\"]($2, $3, $4); })"
        js_postMessage :: Window -> JSVal -> JSString -> JSVal -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/postMessage MDN Window.postMessage documentation>
postMessage :: (MonadDOM m, ToJSString targetOrigin) => Window -> JSVal -> targetOrigin -> Maybe [GObject] -> m ()
postMessage self message targetOrigin transfer = liftDOM (void (((P.maybe (P.return jsUndefined) toJSVal transfer) >>= \a4' -> js_postMessage (self) (message) (toJSString targetOrigin) a4')))

foreign import javascript safe "(($1, $2, $3) => { return $1[\"postMessage\"]($2, $3); })"
        js_postMessageOptions :: Window -> JSVal -> JSVal -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/postMessage MDN Window.postMessage documentation>
postMessageOptions :: (MonadDOM m) => Window -> JSVal -> Maybe WindowPostMessageOptions -> m ()
postMessageOptions self message options = liftDOM (void (((P.maybe (P.return jsUndefined) toJSVal options) >>= \a3' -> js_postMessageOptions (self) (message) a3')))

foreign import javascript safe "(($1) => { return $1[\"print\"](); })"
        js_print :: Window -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/print MDN Window.print documentation>
print :: (MonadDOM m) => Window -> m ()
print self = liftDOM (void ((js_print (self))))

foreign import javascript safe "(($1, $2, $3) => { return $1[\"prompt\"]($2, $3); })"
        js_prompt :: Window -> (Optional JSString) -> (Optional JSString) -> IO JSVal
-- | <https://developer.mozilla.org/docs/Web/API/Window/prompt MDN Window.prompt documentation>
prompt :: (MonadDOM m, ToJSString message, ToJSString default', FromJSString result) => Window -> Maybe message -> Maybe default' -> m (Maybe result)
prompt self message default' = liftDOM (((fromMaybeJSString . Nullable) <$> (js_prompt (self) (toOptionalJSString message) (toOptionalJSString default'))))

-- | <https://developer.mozilla.org/docs/Web/API/Window/prompt MDN Window.prompt documentation>
prompt_ :: (MonadDOM m, ToJSString message, ToJSString default') => Window -> Maybe message -> Maybe default' -> m ()
prompt_ self message default' = liftDOM (void ((js_prompt (self) (toOptionalJSString message) (toOptionalJSString default'))))

-- | <https://developer.mozilla.org/docs/Web/API/Window/prompt MDN Window.prompt documentation>
promptUnsafe :: (MonadDOM m, ToJSString message, ToJSString default', HasCallStack, FromJSString result) => Window -> Maybe message -> Maybe default' -> m result
promptUnsafe self message default' = liftDOM ((((fromMaybeJSString . Nullable) <$> (js_prompt (self) (toOptionalJSString message) (toOptionalJSString default'))) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://developer.mozilla.org/docs/Web/API/Window/prompt MDN Window.prompt documentation>
promptUnchecked :: (MonadDOM m, ToJSString message, ToJSString default', FromJSString result) => Window -> Maybe message -> Maybe default' -> m result
promptUnchecked self message default' = liftDOM ((pFromJSVal <$> (js_prompt (self) (toOptionalJSString message) (toOptionalJSString default'))))

foreign import javascript safe "(($1) => { return $1[\"releaseEvents\"](); })"
        js_releaseEvents :: Window -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/releaseEvents MDN Window.releaseEvents documentation>
releaseEvents :: (MonadDOM m) => Window -> m ()
releaseEvents self = liftDOM (void ((js_releaseEvents (self))))

foreign import javascript safe "(($1, $2, $3) => { return $1[\"requestIdleCallback\"]($2, $3); })"
        js_requestIdleCallback :: Window -> JSVal -> JSVal -> IO Word
-- | <https://developer.mozilla.org/docs/Web/API/Window/requestIdleCallback MDN Window.requestIdleCallback documentation>
requestIdleCallback :: (MonadDOM m) => Window -> IdleRequestCallback -> Maybe IdleRequestOptions -> m Word
requestIdleCallback self callback' options = liftDOM (((toJSVal callback') >>= \a2' -> (P.maybe (P.return jsUndefined) toJSVal options) >>= \a3' -> js_requestIdleCallback (self) a2' a3'))

-- | <https://developer.mozilla.org/docs/Web/API/Window/requestIdleCallback MDN Window.requestIdleCallback documentation>
requestIdleCallback_ :: (MonadDOM m) => Window -> IdleRequestCallback -> Maybe IdleRequestOptions -> m ()
requestIdleCallback_ self callback' options = liftDOM (void (((toJSVal callback') >>= \a2' -> (P.maybe (P.return jsUndefined) toJSVal options) >>= \a3' -> js_requestIdleCallback (self) a2' a3')))

foreign import javascript safe "(($1, $2, $3) => { return $1[\"resizeBy\"]($2, $3); })"
        js_resizeBy :: Window -> Int -> Int -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/resizeBy MDN Window.resizeBy documentation>
resizeBy :: (MonadDOM m) => Window -> Int -> Int -> m ()
resizeBy self x y = liftDOM (void ((js_resizeBy (self) (x) (y))))

foreign import javascript safe "(($1, $2, $3) => { return $1[\"resizeTo\"]($2, $3); })"
        js_resizeTo :: Window -> Int -> Int -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/resizeTo MDN Window.resizeTo documentation>
resizeTo :: (MonadDOM m) => Window -> Int -> Int -> m ()
resizeTo self width height = liftDOM (void ((js_resizeTo (self) (width) (height))))

foreign import javascript interruptible "(($1, $2, $c) => { return $1[\"scroll\"]($2).then(function(s) { $c(null, s);}, function(e) { $c(e, null);}); })"
        js_scrollOpt :: Window -> JSVal -> IO (JSVal, ScrollResult)
-- | <https://developer.mozilla.org/docs/Web/API/Window/scroll MDN Window.scroll documentation>
scrollOpt :: (MonadDOM m) => Window -> Maybe ScrollToOptions -> m ScrollResult
scrollOpt self options = liftDOM ((((P.maybe (P.return jsUndefined) toJSVal options) >>= \a2' -> js_scrollOpt (self) a2') >>= checkPromiseResult))

-- | <https://developer.mozilla.org/docs/Web/API/Window/scroll MDN Window.scroll documentation>
scrollOpt_ :: (MonadDOM m) => Window -> Maybe ScrollToOptions -> m ()
scrollOpt_ self options = liftDOM (void ((((P.maybe (P.return jsUndefined) toJSVal options) >>= \a2' -> js_scrollOpt (self) a2') >>= checkPromiseResult)))

foreign import javascript interruptible "(($1, $2, $3, $c) => { return $1[\"scroll\"]($2, $3).then(function(s) { $c(null, s);}, function(e) { $c(e, null);}); })"
        js_scroll :: Window -> Double -> Double -> IO (JSVal, ScrollResult)
-- | <https://developer.mozilla.org/docs/Web/API/Window/scroll MDN Window.scroll documentation>
scroll :: (MonadDOM m) => Window -> Double -> Double -> m ScrollResult
scroll self x y = liftDOM (((js_scroll (self) (x) (y)) >>= checkPromiseResult))

-- | <https://developer.mozilla.org/docs/Web/API/Window/scroll MDN Window.scroll documentation>
scroll_ :: (MonadDOM m) => Window -> Double -> Double -> m ()
scroll_ self x y = liftDOM (void (((js_scroll (self) (x) (y)) >>= checkPromiseResult)))

foreign import javascript interruptible "(($1, $2, $c) => { return $1[\"scrollBy\"]($2).then(function(s) { $c(null, s);}, function(e) { $c(e, null);}); })"
        js_scrollByOpt :: Window -> JSVal -> IO (JSVal, ScrollResult)
-- | <https://developer.mozilla.org/docs/Web/API/Window/scrollBy MDN Window.scrollBy documentation>
scrollByOpt :: (MonadDOM m) => Window -> Maybe ScrollToOptions -> m ScrollResult
scrollByOpt self options = liftDOM ((((P.maybe (P.return jsUndefined) toJSVal options) >>= \a2' -> js_scrollByOpt (self) a2') >>= checkPromiseResult))

-- | <https://developer.mozilla.org/docs/Web/API/Window/scrollBy MDN Window.scrollBy documentation>
scrollByOpt_ :: (MonadDOM m) => Window -> Maybe ScrollToOptions -> m ()
scrollByOpt_ self options = liftDOM (void ((((P.maybe (P.return jsUndefined) toJSVal options) >>= \a2' -> js_scrollByOpt (self) a2') >>= checkPromiseResult)))

foreign import javascript interruptible "(($1, $2, $3, $c) => { return $1[\"scrollBy\"]($2, $3).then(function(s) { $c(null, s);}, function(e) { $c(e, null);}); })"
        js_scrollBy :: Window -> Double -> Double -> IO (JSVal, ScrollResult)
-- | <https://developer.mozilla.org/docs/Web/API/Window/scrollBy MDN Window.scrollBy documentation>
scrollBy :: (MonadDOM m) => Window -> Double -> Double -> m ScrollResult
scrollBy self x y = liftDOM (((js_scrollBy (self) (x) (y)) >>= checkPromiseResult))

-- | <https://developer.mozilla.org/docs/Web/API/Window/scrollBy MDN Window.scrollBy documentation>
scrollBy_ :: (MonadDOM m) => Window -> Double -> Double -> m ()
scrollBy_ self x y = liftDOM (void (((js_scrollBy (self) (x) (y)) >>= checkPromiseResult)))

foreign import javascript interruptible "(($1, $2, $c) => { return $1[\"scrollTo\"]($2).then(function(s) { $c(null, s);}, function(e) { $c(e, null);}); })"
        js_scrollToOpt :: Window -> JSVal -> IO (JSVal, ScrollResult)
-- | <https://developer.mozilla.org/docs/Web/API/Window/scrollTo MDN Window.scrollTo documentation>
scrollToOpt :: (MonadDOM m) => Window -> Maybe ScrollToOptions -> m ScrollResult
scrollToOpt self options = liftDOM ((((P.maybe (P.return jsUndefined) toJSVal options) >>= \a2' -> js_scrollToOpt (self) a2') >>= checkPromiseResult))

-- | <https://developer.mozilla.org/docs/Web/API/Window/scrollTo MDN Window.scrollTo documentation>
scrollToOpt_ :: (MonadDOM m) => Window -> Maybe ScrollToOptions -> m ()
scrollToOpt_ self options = liftDOM (void ((((P.maybe (P.return jsUndefined) toJSVal options) >>= \a2' -> js_scrollToOpt (self) a2') >>= checkPromiseResult)))

foreign import javascript interruptible "(($1, $2, $3, $c) => { return $1[\"scrollTo\"]($2, $3).then(function(s) { $c(null, s);}, function(e) { $c(e, null);}); })"
        js_scrollTo :: Window -> Double -> Double -> IO (JSVal, ScrollResult)
-- | <https://developer.mozilla.org/docs/Web/API/Window/scrollTo MDN Window.scrollTo documentation>
scrollTo :: (MonadDOM m) => Window -> Double -> Double -> m ScrollResult
scrollTo self x y = liftDOM (((js_scrollTo (self) (x) (y)) >>= checkPromiseResult))

-- | <https://developer.mozilla.org/docs/Web/API/Window/scrollTo MDN Window.scrollTo documentation>
scrollTo_ :: (MonadDOM m) => Window -> Double -> Double -> m ()
scrollTo_ self x y = liftDOM (void (((js_scrollTo (self) (x) (y)) >>= checkPromiseResult)))

foreign import javascript safe "(($1) => { return $1[\"stop\"](); })"
        js_stop :: Window -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/stop MDN Window.stop documentation>
stop :: (MonadDOM m) => Window -> m ()
stop self = liftDOM (void ((js_stop (self))))

foreign import javascript unsafe "(($1) => { return $1[\"window\"]; })"
        js_getWindow :: Window -> IO Window
-- | <https://developer.mozilla.org/docs/Web/API/Window/window MDN Window.window documentation>
getWindow :: (MonadDOM m) => Window -> m Window
getWindow self = liftDOM ((js_getWindow (self)))

foreign import javascript unsafe "(($1) => { return $1[\"self\"]; })"
        js_getSelf :: Window -> IO Window
-- | <https://developer.mozilla.org/docs/Web/API/Window/self MDN Window.self documentation>
getSelf :: (MonadDOM m) => Window -> m Window
getSelf self = liftDOM ((js_getSelf (self)))

foreign import javascript unsafe "(($1) => { return $1[\"document\"]; })"
        js_getDocument :: Window -> IO Document
-- | <https://developer.mozilla.org/docs/Web/API/Window/document MDN Window.document documentation>
getDocument :: (MonadDOM m) => Window -> m Document
getDocument self = liftDOM ((js_getDocument (self)))

foreign import javascript safe "(($1, $2) => { $1[\"name\"] = $2; })"
        js_setName :: Window -> JSString -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/name MDN Window.name documentation>
setName :: (MonadDOM m, ToJSString val) => Window -> val -> m ()
setName self val = liftDOM (void ((js_setName (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"name\"]; })"
        js_getName :: Window -> IO JSString
-- | <https://developer.mozilla.org/docs/Web/API/Window/name MDN Window.name documentation>
getName :: (MonadDOM m, FromJSString result) => Window -> m result
getName self = liftDOM ((fromJSString <$> (js_getName (self))))

foreign import javascript unsafe "(($1) => { return $1[\"location\"]; })"
        js_getLocation :: Window -> IO Location
-- | <https://developer.mozilla.org/docs/Web/API/Window/location MDN Window.location documentation>
getLocation :: (MonadDOM m) => Window -> m Location
getLocation self = liftDOM ((js_getLocation (self)))

foreign import javascript unsafe "(($1) => { return $1[\"history\"]; })"
        js_getHistory :: Window -> IO History
-- | <https://developer.mozilla.org/docs/Web/API/Window/history MDN Window.history documentation>
getHistory :: (MonadDOM m) => Window -> m History
getHistory self = liftDOM ((js_getHistory (self)))

foreign import javascript unsafe "(($1) => { return $1[\"navigation\"]; })"
        js_getNavigation :: Window -> IO Navigation
-- | <https://developer.mozilla.org/docs/Web/API/Window/navigation MDN Window.navigation documentation>
getNavigation :: (MonadDOM m) => Window -> m Navigation
getNavigation self = liftDOM ((js_getNavigation (self)))

foreign import javascript unsafe "(($1) => { return $1[\"customElements\"]; })"
        js_getCustomElements :: Window -> IO CustomElementRegistry
-- | <https://developer.mozilla.org/docs/Web/API/Window/customElements MDN Window.customElements documentation>
getCustomElements :: (MonadDOM m) => Window -> m CustomElementRegistry
getCustomElements self = liftDOM ((js_getCustomElements (self)))

foreign import javascript unsafe "(($1) => { return $1[\"locationbar\"]; })"
        js_getLocationbar :: Window -> IO BarProp
-- | <https://developer.mozilla.org/docs/Web/API/Window/locationbar MDN Window.locationbar documentation>
getLocationbar :: (MonadDOM m) => Window -> m BarProp
getLocationbar self = liftDOM ((js_getLocationbar (self)))

foreign import javascript unsafe "(($1) => { return $1[\"menubar\"]; })"
        js_getMenubar :: Window -> IO BarProp
-- | <https://developer.mozilla.org/docs/Web/API/Window/menubar MDN Window.menubar documentation>
getMenubar :: (MonadDOM m) => Window -> m BarProp
getMenubar self = liftDOM ((js_getMenubar (self)))

foreign import javascript unsafe "(($1) => { return $1[\"personalbar\"]; })"
        js_getPersonalbar :: Window -> IO BarProp
-- | <https://developer.mozilla.org/docs/Web/API/Window/personalbar MDN Window.personalbar documentation>
getPersonalbar :: (MonadDOM m) => Window -> m BarProp
getPersonalbar self = liftDOM ((js_getPersonalbar (self)))

foreign import javascript unsafe "(($1) => { return $1[\"scrollbars\"]; })"
        js_getScrollbars :: Window -> IO BarProp
-- | <https://developer.mozilla.org/docs/Web/API/Window/scrollbars MDN Window.scrollbars documentation>
getScrollbars :: (MonadDOM m) => Window -> m BarProp
getScrollbars self = liftDOM ((js_getScrollbars (self)))

foreign import javascript unsafe "(($1) => { return $1[\"statusbar\"]; })"
        js_getStatusbar :: Window -> IO BarProp
-- | <https://developer.mozilla.org/docs/Web/API/Window/statusbar MDN Window.statusbar documentation>
getStatusbar :: (MonadDOM m) => Window -> m BarProp
getStatusbar self = liftDOM ((js_getStatusbar (self)))

foreign import javascript unsafe "(($1) => { return $1[\"toolbar\"]; })"
        js_getToolbar :: Window -> IO BarProp
-- | <https://developer.mozilla.org/docs/Web/API/Window/toolbar MDN Window.toolbar documentation>
getToolbar :: (MonadDOM m) => Window -> m BarProp
getToolbar self = liftDOM ((js_getToolbar (self)))

foreign import javascript safe "(($1, $2) => { $1[\"status\"] = $2; })"
        js_setStatus :: Window -> JSString -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/status MDN Window.status documentation>
setStatus :: (MonadDOM m, ToJSString val) => Window -> val -> m ()
setStatus self val = liftDOM (void ((js_setStatus (self) (toJSString val))))

foreign import javascript unsafe "(($1) => { return $1[\"status\"]; })"
        js_getStatus :: Window -> IO JSString
-- | <https://developer.mozilla.org/docs/Web/API/Window/status MDN Window.status documentation>
getStatus :: (MonadDOM m, FromJSString result) => Window -> m result
getStatus self = liftDOM ((fromJSString <$> (js_getStatus (self))))

foreign import javascript unsafe "(($1) => { return $1[\"closed\"]; })"
        js_getClosed :: Window -> IO Bool
-- | <https://developer.mozilla.org/docs/Web/API/Window/closed MDN Window.closed documentation>
getClosed :: (MonadDOM m) => Window -> m Bool
getClosed self = liftDOM ((js_getClosed (self)))

foreign import javascript unsafe "(($1) => { return $1[\"frames\"]; })"
        js_getFrames :: Window -> IO Window
-- | <https://developer.mozilla.org/docs/Web/API/Window/frames MDN Window.frames documentation>
getFrames :: (MonadDOM m) => Window -> m Window
getFrames self = liftDOM ((js_getFrames (self)))

foreign import javascript unsafe "(($1) => { return $1[\"length\"]; })"
        js_getLength :: Window -> IO Word
-- | <https://developer.mozilla.org/docs/Web/API/Window/length MDN Window.length documentation>
getLength :: (MonadDOM m) => Window -> m Word
getLength self = liftDOM ((js_getLength (self)))

foreign import javascript unsafe "(($1) => { return $1[\"top\"]; })"
        js_getTop :: Window -> IO JSVal
-- | <https://developer.mozilla.org/docs/Web/API/Window/top MDN Window.top documentation>
getTop :: (MonadDOM m) => Window -> m (Maybe Window)
getTop self = liftDOM (((js_getTop (self)) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/Window/top MDN Window.top documentation>
getTopUnsafe :: (MonadDOM m, HasCallStack) => Window -> m Window
getTopUnsafe self = liftDOM ((((js_getTop (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://developer.mozilla.org/docs/Web/API/Window/top MDN Window.top documentation>
getTopUnchecked :: (MonadDOM m) => Window -> m Window
getTopUnchecked self = liftDOM ((pFromJSVal <$> (js_getTop (self))))

foreign import javascript safe "(($1, $2) => { $1[\"opener\"] = $2; })"
        js_setOpener :: Window -> JSVal -> IO ()
-- | <https://developer.mozilla.org/docs/Web/API/Window/opener MDN Window.opener documentation>
setOpener :: (MonadDOM m) => Window -> JSVal -> m ()
setOpener self val = liftDOM (void ((js_setOpener (self) (val))))

foreign import javascript unsafe "(($1) => { return $1[\"opener\"]; })"
        js_getOpener :: Window -> IO JSVal
-- | <https://developer.mozilla.org/docs/Web/API/Window/opener MDN Window.opener documentation>
getOpener :: (MonadDOM m) => Window -> m JSVal
getOpener self = liftDOM ((js_getOpener (self)))

foreign import javascript unsafe "(($1) => { return $1[\"parent\"]; })"
        js_getParent :: Window -> IO JSVal
-- | <https://developer.mozilla.org/docs/Web/API/Window/parent MDN Window.parent documentation>
getParent :: (MonadDOM m) => Window -> m (Maybe Window)
getParent self = liftDOM (((js_getParent (self)) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/Window/parent MDN Window.parent documentation>
getParentUnsafe :: (MonadDOM m, HasCallStack) => Window -> m Window
getParentUnsafe self = liftDOM ((((js_getParent (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://developer.mozilla.org/docs/Web/API/Window/parent MDN Window.parent documentation>
getParentUnchecked :: (MonadDOM m) => Window -> m Window
getParentUnchecked self = liftDOM ((pFromJSVal <$> (js_getParent (self))))

foreign import javascript unsafe "(($1) => { return $1[\"frameElement\"]; })"
        js_getFrameElement :: Window -> IO JSVal
-- | <https://developer.mozilla.org/docs/Web/API/Window/frameElement MDN Window.frameElement documentation>
getFrameElement :: (MonadDOM m) => Window -> m (Maybe Element)
getFrameElement self = liftDOM (((js_getFrameElement (self)) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/Window/frameElement MDN Window.frameElement documentation>
getFrameElementUnsafe :: (MonadDOM m, HasCallStack) => Window -> m Element
getFrameElementUnsafe self = liftDOM ((((js_getFrameElement (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://developer.mozilla.org/docs/Web/API/Window/frameElement MDN Window.frameElement documentation>
getFrameElementUnchecked :: (MonadDOM m) => Window -> m Element
getFrameElementUnchecked self = liftDOM ((pFromJSVal <$> (js_getFrameElement (self))))

foreign import javascript unsafe "(($1) => { return $1[\"navigator\"]; })"
        js_getNavigator :: Window -> IO Navigator
-- | <https://developer.mozilla.org/docs/Web/API/Window/navigator MDN Window.navigator documentation>
getNavigator :: (MonadDOM m) => Window -> m Navigator
getNavigator self = liftDOM ((js_getNavigator (self)))

foreign import javascript unsafe "(($1) => { return $1[\"clientInformation\"]; })"
        js_getClientInformation :: Window -> IO Navigator
-- | <https://html.spec.whatwg.org/multipage/system-state.html#dom-clientinformation Window.clientInformation specification>
getClientInformation :: (MonadDOM m) => Window -> m Navigator
getClientInformation self = liftDOM ((js_getClientInformation (self)))

foreign import javascript unsafe "(($1) => { return $1[\"originAgentCluster\"]; })"
        js_getOriginAgentCluster :: Window -> IO Bool
-- | <https://developer.mozilla.org/docs/Web/API/Window/originAgentCluster MDN Window.originAgentCluster documentation>
getOriginAgentCluster :: (MonadDOM m) => Window -> m Bool
getOriginAgentCluster self = liftDOM ((js_getOriginAgentCluster (self)))

foreign import javascript unsafe "(($1) => { return $1[\"cookieStore\"]; })"
        js_getCookieStore :: Window -> IO CookieStore
-- | <https://developer.mozilla.org/docs/Web/API/Window/cookieStore MDN Window.cookieStore documentation>
getCookieStore :: (MonadDOM m) => Window -> m CookieStore
getCookieStore self = liftDOM ((js_getCookieStore (self)))

foreign import javascript unsafe "(($1) => { return $1[\"screen\"]; })"
        js_getScreen :: Window -> IO Screen
-- | <https://developer.mozilla.org/docs/Web/API/Window/screen MDN Window.screen documentation>
getScreen :: (MonadDOM m) => Window -> m Screen
getScreen self = liftDOM ((js_getScreen (self)))

foreign import javascript unsafe "(($1) => { return $1[\"visualViewport\"]; })"
        js_getVisualViewport :: Window -> IO JSVal
-- | <https://developer.mozilla.org/docs/Web/API/Window/visualViewport MDN Window.visualViewport documentation>
getVisualViewport :: (MonadDOM m) => Window -> m (Maybe VisualViewport)
getVisualViewport self = liftDOM (((js_getVisualViewport (self)) >>= fromJSValUnchecked))

-- | <https://developer.mozilla.org/docs/Web/API/Window/visualViewport MDN Window.visualViewport documentation>
getVisualViewportUnsafe :: (MonadDOM m, HasCallStack) => Window -> m VisualViewport
getVisualViewportUnsafe self = liftDOM ((((js_getVisualViewport (self)) >>= fromJSValUnchecked) >>= P.maybe (P.error "Nothing to return") P.return))

-- | <https://developer.mozilla.org/docs/Web/API/Window/visualViewport MDN Window.visualViewport documentation>
getVisualViewportUnchecked :: (MonadDOM m) => Window -> m VisualViewport
getVisualViewportUnchecked self = liftDOM ((pFromJSVal <$> (js_getVisualViewport (self))))

foreign import javascript unsafe "(($1) => { return $1[\"innerWidth\"]; })"
        js_getInnerWidth :: Window -> IO Int
-- | <https://developer.mozilla.org/docs/Web/API/Window/innerWidth MDN Window.innerWidth documentation>
getInnerWidth :: (MonadDOM m) => Window -> m Int
getInnerWidth self = liftDOM ((js_getInnerWidth (self)))

foreign import javascript unsafe "(($1) => { return $1[\"innerHeight\"]; })"
        js_getInnerHeight :: Window -> IO Int
-- | <https://developer.mozilla.org/docs/Web/API/Window/innerHeight MDN Window.innerHeight documentation>
getInnerHeight :: (MonadDOM m) => Window -> m Int
getInnerHeight self = liftDOM ((js_getInnerHeight (self)))

foreign import javascript unsafe "(($1) => { return $1[\"scrollX\"]; })"
        js_getScrollX :: Window -> IO Double
-- | <https://developer.mozilla.org/docs/Web/API/Window/scrollX MDN Window.scrollX documentation>
getScrollX :: (MonadDOM m) => Window -> m Double
getScrollX self = liftDOM ((js_getScrollX (self)))

foreign import javascript unsafe "(($1) => { return $1[\"pageXOffset\"]; })"
        js_getPageXOffset :: Window -> IO Double
-- | <https://drafts.csswg.org/cssom-view-1/#dom-window-pagexoffset Window.pageXOffset specification>
getPageXOffset :: (MonadDOM m) => Window -> m Double
getPageXOffset self = liftDOM ((js_getPageXOffset (self)))

foreign import javascript unsafe "(($1) => { return $1[\"scrollY\"]; })"
        js_getScrollY :: Window -> IO Double
-- | <https://developer.mozilla.org/docs/Web/API/Window/scrollY MDN Window.scrollY documentation>
getScrollY :: (MonadDOM m) => Window -> m Double
getScrollY self = liftDOM ((js_getScrollY (self)))

foreign import javascript unsafe "(($1) => { return $1[\"pageYOffset\"]; })"
        js_getPageYOffset :: Window -> IO Double
-- | <https://drafts.csswg.org/cssom-view-1/#dom-window-pageyoffset Window.pageYOffset specification>
getPageYOffset :: (MonadDOM m) => Window -> m Double
getPageYOffset self = liftDOM ((js_getPageYOffset (self)))

foreign import javascript unsafe "(($1) => { return $1[\"screenX\"]; })"
        js_getScreenX :: Window -> IO Int
-- | <https://developer.mozilla.org/docs/Web/API/Window/screenX MDN Window.screenX documentation>
getScreenX :: (MonadDOM m) => Window -> m Int
getScreenX self = liftDOM ((js_getScreenX (self)))

foreign import javascript unsafe "(($1) => { return $1[\"screenLeft\"]; })"
        js_getScreenLeft :: Window -> IO Int
-- | <https://developer.mozilla.org/docs/Web/API/Window/screenLeft MDN Window.screenLeft documentation>
getScreenLeft :: (MonadDOM m) => Window -> m Int
getScreenLeft self = liftDOM ((js_getScreenLeft (self)))

foreign import javascript unsafe "(($1) => { return $1[\"screenY\"]; })"
        js_getScreenY :: Window -> IO Int
-- | <https://developer.mozilla.org/docs/Web/API/Window/screenY MDN Window.screenY documentation>
getScreenY :: (MonadDOM m) => Window -> m Int
getScreenY self = liftDOM ((js_getScreenY (self)))

foreign import javascript unsafe "(($1) => { return $1[\"screenTop\"]; })"
        js_getScreenTop :: Window -> IO Int
-- | <https://developer.mozilla.org/docs/Web/API/Window/screenTop MDN Window.screenTop documentation>
getScreenTop :: (MonadDOM m) => Window -> m Int
getScreenTop self = liftDOM ((js_getScreenTop (self)))

foreign import javascript unsafe "(($1) => { return $1[\"outerWidth\"]; })"
        js_getOuterWidth :: Window -> IO Int
-- | <https://developer.mozilla.org/docs/Web/API/Window/outerWidth MDN Window.outerWidth documentation>
getOuterWidth :: (MonadDOM m) => Window -> m Int
getOuterWidth self = liftDOM ((js_getOuterWidth (self)))

foreign import javascript unsafe "(($1) => { return $1[\"outerHeight\"]; })"
        js_getOuterHeight :: Window -> IO Int
-- | <https://developer.mozilla.org/docs/Web/API/Window/outerHeight MDN Window.outerHeight documentation>
getOuterHeight :: (MonadDOM m) => Window -> m Int
getOuterHeight self = liftDOM ((js_getOuterHeight (self)))

foreign import javascript unsafe "(($1) => { return $1[\"devicePixelRatio\"]; })"
        js_getDevicePixelRatio :: Window -> IO Double
-- | <https://developer.mozilla.org/docs/Web/API/Window/devicePixelRatio MDN Window.devicePixelRatio documentation>
getDevicePixelRatio :: (MonadDOM m) => Window -> m Double
getDevicePixelRatio self = liftDOM ((js_getDevicePixelRatio (self)))

foreign import javascript unsafe "(($1) => { return $1[\"documentPictureInPicture\"]; })"
        js_getDocumentPictureInPicture :: Window -> IO DocumentPictureInPicture
-- | <https://developer.mozilla.org/docs/Web/API/Window/documentPictureInPicture MDN Window.documentPictureInPicture documentation>
getDocumentPictureInPicture :: (MonadDOM m) => Window -> m DocumentPictureInPicture
getDocumentPictureInPicture self = liftDOM ((js_getDocumentPictureInPicture (self)))

foreign import javascript unsafe "(($1) => { return $1[\"event\"]; })"
        js_getEvent :: Window -> IO EventOrUndefined
-- | <https://developer.mozilla.org/docs/Web/API/Window/event MDN Window.event documentation>
getEvent :: (MonadDOM m) => Window -> m EventOrUndefined
getEvent self = liftDOM ((js_getEvent (self)))

foreign import javascript unsafe "(($1) => { return $1[\"external\"]; })"
        js_getExternal :: Window -> IO External
-- | <https://developer.mozilla.org/docs/Web/API/Window/external MDN Window.external documentation>
getExternal :: (MonadDOM m) => Window -> m External
getExternal self = liftDOM ((js_getExternal (self)))

foreign import javascript unsafe "(($1) => { return $1[\"speechSynthesis\"]; })"
        js_getSpeechSynthesis :: Window -> IO SpeechSynthesis
-- | <https://developer.mozilla.org/docs/Web/API/Window/speechSynthesis MDN Window.speechSynthesis documentation>
getSpeechSynthesis :: (MonadDOM m) => Window -> m SpeechSynthesis
getSpeechSynthesis self = liftDOM ((js_getSpeechSynthesis (self)))

-- | <https://w3c.github.io/deviceorientation/#dom-window-ondeviceorientation deviceorientation event>
deviceOrientation :: EventName Window DeviceOrientationEvent
deviceOrientation = unsafeEventName (toJSString "deviceorientation")

-- | <https://w3c.github.io/deviceorientation/#dom-window-ondeviceorientationabsolute deviceorientationabsolute event>
deviceorientationabsolute :: EventName Window DeviceOrientationEvent
deviceorientationabsolute = unsafeEventName (toJSString "deviceorientationabsolute")

-- | <https://w3c.github.io/deviceorientation/#dom-window-ondevicemotion devicemotion event>
deviceMotion :: EventName Window DeviceMotionEvent
deviceMotion = unsafeEventName (toJSString "devicemotion")

-- | <https://w3c.github.io/clipboard-apis/#eventdef-globaleventhandlers-clipboardchange clipboardchange event>
clipboardchange :: EventName Window ClipboardChangeEvent
clipboardchange = unsafeEventName (toJSString "clipboardchange")