diff --git a/GI/WebKit2WebExtension.hs b/GI/WebKit2WebExtension.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension.hs
@@ -0,0 +1,38 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension
+    (     module GI.WebKit2WebExtension.Callbacks ,
+    module GI.WebKit2WebExtension.Constants ,
+    module GI.WebKit2WebExtension.Enums     ,
+    module GI.WebKit2WebExtension.Flags     ,
+    module GI.WebKit2WebExtension.Interfaces,
+    module GI.WebKit2WebExtension.Objects   ,
+    module GI.WebKit2WebExtension.Structs   ,
+
+
+    ) where
+
+import GI.WebKit2WebExtension.Callbacks
+import GI.WebKit2WebExtension.Constants
+import GI.WebKit2WebExtension.Enums
+import GI.WebKit2WebExtension.Flags
+import GI.WebKit2WebExtension.Interfaces
+import GI.WebKit2WebExtension.Objects
+import GI.WebKit2WebExtension.Structs
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+
+
diff --git a/GI/WebKit2WebExtension/Callbacks.hs b/GI/WebKit2WebExtension/Callbacks.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Callbacks.hs
@@ -0,0 +1,106 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Callbacks
+    ( 
+
+ -- * Signals
+-- ** WebExtensionInitializeFunction
+    WebExtensionInitializeFunction          ,
+    WebExtensionInitializeFunctionC         ,
+    mkWebExtensionInitializeFunction        ,
+    noWebExtensionInitializeFunction        ,
+    webExtensionInitializeFunctionClosure   ,
+    webExtensionInitializeFunctionWrapper   ,
+
+
+-- ** WebExtensionInitializeWithUserDataFunction
+    WebExtensionInitializeWithUserDataFunction,
+    WebExtensionInitializeWithUserDataFunctionC,
+    mkWebExtensionInitializeWithUserDataFunction,
+    noWebExtensionInitializeWithUserDataFunction,
+    webExtensionInitializeWithUserDataFunctionClosure,
+    webExtensionInitializeWithUserDataFunctionWrapper,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+
+
+-- callback WebExtensionInitializeWithUserDataFunction
+webExtensionInitializeWithUserDataFunctionClosure :: WebExtensionInitializeWithUserDataFunction -> IO Closure
+webExtensionInitializeWithUserDataFunctionClosure cb = newCClosure =<< mkWebExtensionInitializeWithUserDataFunction wrapped
+    where wrapped = webExtensionInitializeWithUserDataFunctionWrapper Nothing cb
+
+type WebExtensionInitializeWithUserDataFunctionC =
+    Ptr WebExtension ->
+    Ptr GVariant ->
+    IO ()
+
+foreign import ccall "wrapper"
+    mkWebExtensionInitializeWithUserDataFunction :: WebExtensionInitializeWithUserDataFunctionC -> IO (FunPtr WebExtensionInitializeWithUserDataFunctionC)
+
+type WebExtensionInitializeWithUserDataFunction =
+    WebExtension ->
+    GVariant ->
+    IO ()
+
+noWebExtensionInitializeWithUserDataFunction :: Maybe WebExtensionInitializeWithUserDataFunction
+noWebExtensionInitializeWithUserDataFunction = Nothing
+
+webExtensionInitializeWithUserDataFunctionWrapper ::
+    Maybe (Ptr (FunPtr (WebExtensionInitializeWithUserDataFunctionC))) ->
+    WebExtensionInitializeWithUserDataFunction ->
+    Ptr WebExtension ->
+    Ptr GVariant ->
+    IO ()
+webExtensionInitializeWithUserDataFunctionWrapper funptrptr _cb extension user_data = do
+    extension' <- (newObject WebExtension) extension
+    user_data' <- newGVariantFromPtr user_data
+    _cb  extension' user_data'
+    maybeReleaseFunPtr funptrptr
+
+-- callback WebExtensionInitializeFunction
+webExtensionInitializeFunctionClosure :: WebExtensionInitializeFunction -> IO Closure
+webExtensionInitializeFunctionClosure cb = newCClosure =<< mkWebExtensionInitializeFunction wrapped
+    where wrapped = webExtensionInitializeFunctionWrapper Nothing cb
+
+type WebExtensionInitializeFunctionC =
+    Ptr WebExtension ->
+    IO ()
+
+foreign import ccall "wrapper"
+    mkWebExtensionInitializeFunction :: WebExtensionInitializeFunctionC -> IO (FunPtr WebExtensionInitializeFunctionC)
+
+type WebExtensionInitializeFunction =
+    WebExtension ->
+    IO ()
+
+noWebExtensionInitializeFunction :: Maybe WebExtensionInitializeFunction
+noWebExtensionInitializeFunction = Nothing
+
+webExtensionInitializeFunctionWrapper ::
+    Maybe (Ptr (FunPtr (WebExtensionInitializeFunctionC))) ->
+    WebExtensionInitializeFunction ->
+    Ptr WebExtension ->
+    IO ()
+webExtensionInitializeFunctionWrapper funptrptr _cb extension = do
+    extension' <- (newObject WebExtension) extension
+    _cb  extension'
+    maybeReleaseFunPtr funptrptr
+
+
diff --git a/GI/WebKit2WebExtension/Constants.hs b/GI/WebKit2WebExtension/Constants.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Constants.hs
@@ -0,0 +1,368 @@
+{-# LANGUAGE PatternSynonyms, ScopedTypeVariables, ViewPatterns #-}
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Constants
+    ( 
+    pattern DOM_XPATH_RESULT_UNORDERED_NODE_SNAPSHOT_TYPE,
+    pattern DOM_XPATH_RESULT_UNORDERED_NODE_ITERATOR_TYPE,
+    pattern DOM_XPATH_RESULT_STRING_TYPE    ,
+    pattern DOM_XPATH_RESULT_ORDERED_NODE_SNAPSHOT_TYPE,
+    pattern DOM_XPATH_RESULT_ORDERED_NODE_ITERATOR_TYPE,
+    pattern DOM_XPATH_RESULT_NUMBER_TYPE    ,
+    pattern DOM_XPATH_RESULT_FIRST_ORDERED_NODE_TYPE,
+    pattern DOM_XPATH_RESULT_BOOLEAN_TYPE   ,
+    pattern DOM_XPATH_RESULT_ANY_UNORDERED_NODE_TYPE,
+    pattern DOM_XPATH_RESULT_ANY_TYPE       ,
+    pattern DOM_RANGE_START_TO_START        ,
+    pattern DOM_RANGE_START_TO_END          ,
+    pattern DOM_RANGE_NODE_INSIDE           ,
+    pattern DOM_RANGE_NODE_BEFORE_AND_AFTER ,
+    pattern DOM_RANGE_NODE_BEFORE           ,
+    pattern DOM_RANGE_NODE_AFTER            ,
+    pattern DOM_RANGE_END_TO_START          ,
+    pattern DOM_RANGE_END_TO_END            ,
+    pattern DOM_NODE_TEXT_NODE              ,
+    pattern DOM_NODE_PROCESSING_INSTRUCTION_NODE,
+    pattern DOM_NODE_FILTER_SKIP            ,
+    pattern DOM_NODE_FILTER_SHOW_TEXT       ,
+    pattern DOM_NODE_FILTER_SHOW_PROCESSING_INSTRUCTION,
+    pattern DOM_NODE_FILTER_SHOW_NOTATION   ,
+    pattern DOM_NODE_FILTER_SHOW_ENTITY_REFERENCE,
+    pattern DOM_NODE_FILTER_SHOW_ENTITY     ,
+    pattern DOM_NODE_FILTER_SHOW_ELEMENT    ,
+    pattern DOM_NODE_FILTER_SHOW_DOCUMENT_TYPE,
+    pattern DOM_NODE_FILTER_SHOW_DOCUMENT_FRAGMENT,
+    pattern DOM_NODE_FILTER_SHOW_DOCUMENT   ,
+    pattern DOM_NODE_FILTER_SHOW_COMMENT    ,
+    pattern DOM_NODE_FILTER_SHOW_CDATA_SECTION,
+    pattern DOM_NODE_FILTER_SHOW_ATTRIBUTE  ,
+    pattern DOM_NODE_FILTER_SHOW_ALL        ,
+    pattern DOM_NODE_FILTER_REJECT          ,
+    pattern DOM_NODE_FILTER_ACCEPT          ,
+    pattern DOM_NODE_ENTITY_REFERENCE_NODE  ,
+    pattern DOM_NODE_ENTITY_NODE            ,
+    pattern DOM_NODE_ELEMENT_NODE           ,
+    pattern DOM_NODE_DOCUMENT_TYPE_NODE     ,
+    pattern DOM_NODE_DOCUMENT_POSITION_PRECEDING,
+    pattern DOM_NODE_DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC,
+    pattern DOM_NODE_DOCUMENT_POSITION_FOLLOWING,
+    pattern DOM_NODE_DOCUMENT_POSITION_DISCONNECTED,
+    pattern DOM_NODE_DOCUMENT_POSITION_CONTAINS,
+    pattern DOM_NODE_DOCUMENT_POSITION_CONTAINED_BY,
+    pattern DOM_NODE_DOCUMENT_NODE          ,
+    pattern DOM_NODE_DOCUMENT_FRAGMENT_NODE ,
+    pattern DOM_NODE_COMMENT_NODE           ,
+    pattern DOM_NODE_CDATA_SECTION_NODE     ,
+    pattern DOM_NODE_ATTRIBUTE_NODE         ,
+    pattern DOM_KEYBOARD_EVENT_KEY_LOCATION_STANDARD,
+    pattern DOM_KEYBOARD_EVENT_KEY_LOCATION_RIGHT,
+    pattern DOM_KEYBOARD_EVENT_KEY_LOCATION_NUMPAD,
+    pattern DOM_KEYBOARD_EVENT_KEY_LOCATION_LEFT,
+    pattern DOM_EVENT_SELECT                ,
+    pattern DOM_EVENT_NONE                  ,
+    pattern DOM_EVENT_MOUSEUP               ,
+    pattern DOM_EVENT_MOUSEOVER             ,
+    pattern DOM_EVENT_MOUSEOUT              ,
+    pattern DOM_EVENT_MOUSEMOVE             ,
+    pattern DOM_EVENT_MOUSEDRAG             ,
+    pattern DOM_EVENT_MOUSEDOWN             ,
+    pattern DOM_EVENT_KEYUP                 ,
+    pattern DOM_EVENT_KEYPRESS              ,
+    pattern DOM_EVENT_KEYDOWN               ,
+    pattern DOM_EVENT_FOCUS                 ,
+    pattern DOM_EVENT_DRAGDROP              ,
+    pattern DOM_EVENT_DBLCLICK              ,
+    pattern DOM_EVENT_CLICK                 ,
+    pattern DOM_EVENT_CHANGE                ,
+    pattern DOM_EVENT_CAPTURING_PHASE       ,
+    pattern DOM_EVENT_BUBBLING_PHASE        ,
+    pattern DOM_EVENT_BLUR                  ,
+    pattern DOM_EVENT_AT_TARGET             ,
+    pattern DOM_CSS_VALUE_CSS_VALUE_LIST    ,
+    pattern DOM_CSS_VALUE_CSS_PRIMITIVE_VALUE,
+    pattern DOM_CSS_VALUE_CSS_INHERIT       ,
+    pattern DOM_CSS_VALUE_CSS_CUSTOM        ,
+    pattern DOM_CSS_RULE_UNKNOWN_RULE       ,
+    pattern DOM_CSS_RULE_STYLE_RULE         ,
+    pattern DOM_CSS_RULE_PAGE_RULE          ,
+    pattern DOM_CSS_RULE_MEDIA_RULE         ,
+    pattern DOM_CSS_RULE_IMPORT_RULE        ,
+    pattern DOM_CSS_RULE_FONT_FACE_RULE     ,
+    pattern DOM_CSS_RULE_CHARSET_RULE       ,
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+
+
+pattern DOM_XPATH_RESULT_UNORDERED_NODE_SNAPSHOT_TYPE = 6 :: Int32
+
+
+pattern DOM_XPATH_RESULT_UNORDERED_NODE_ITERATOR_TYPE = 4 :: Int32
+
+
+pattern DOM_XPATH_RESULT_STRING_TYPE = 2 :: Int32
+
+
+pattern DOM_XPATH_RESULT_ORDERED_NODE_SNAPSHOT_TYPE = 7 :: Int32
+
+
+pattern DOM_XPATH_RESULT_ORDERED_NODE_ITERATOR_TYPE = 5 :: Int32
+
+
+pattern DOM_XPATH_RESULT_NUMBER_TYPE = 1 :: Int32
+
+
+pattern DOM_XPATH_RESULT_FIRST_ORDERED_NODE_TYPE = 9 :: Int32
+
+
+pattern DOM_XPATH_RESULT_BOOLEAN_TYPE = 3 :: Int32
+
+
+pattern DOM_XPATH_RESULT_ANY_UNORDERED_NODE_TYPE = 8 :: Int32
+
+
+pattern DOM_XPATH_RESULT_ANY_TYPE = 0 :: Int32
+
+
+pattern DOM_RANGE_START_TO_START = 0 :: Int32
+
+
+pattern DOM_RANGE_START_TO_END = 1 :: Int32
+
+
+pattern DOM_RANGE_NODE_INSIDE = 3 :: Int32
+
+
+pattern DOM_RANGE_NODE_BEFORE_AND_AFTER = 2 :: Int32
+
+
+pattern DOM_RANGE_NODE_BEFORE = 0 :: Int32
+
+
+pattern DOM_RANGE_NODE_AFTER = 1 :: Int32
+
+
+pattern DOM_RANGE_END_TO_START = 3 :: Int32
+
+
+pattern DOM_RANGE_END_TO_END = 2 :: Int32
+
+
+pattern DOM_NODE_TEXT_NODE = 3 :: Int32
+
+
+pattern DOM_NODE_PROCESSING_INSTRUCTION_NODE = 7 :: Int32
+
+
+pattern DOM_NODE_FILTER_SKIP = 3 :: Int32
+
+
+pattern DOM_NODE_FILTER_SHOW_TEXT = 4 :: Int32
+
+
+pattern DOM_NODE_FILTER_SHOW_PROCESSING_INSTRUCTION = 64 :: Int32
+
+
+pattern DOM_NODE_FILTER_SHOW_NOTATION = 2048 :: Int32
+
+
+pattern DOM_NODE_FILTER_SHOW_ENTITY_REFERENCE = 16 :: Int32
+
+
+pattern DOM_NODE_FILTER_SHOW_ENTITY = 32 :: Int32
+
+
+pattern DOM_NODE_FILTER_SHOW_ELEMENT = 1 :: Int32
+
+
+pattern DOM_NODE_FILTER_SHOW_DOCUMENT_TYPE = 512 :: Int32
+
+
+pattern DOM_NODE_FILTER_SHOW_DOCUMENT_FRAGMENT = 1024 :: Int32
+
+
+pattern DOM_NODE_FILTER_SHOW_DOCUMENT = 256 :: Int32
+
+
+pattern DOM_NODE_FILTER_SHOW_COMMENT = 128 :: Int32
+
+
+pattern DOM_NODE_FILTER_SHOW_CDATA_SECTION = 8 :: Int32
+
+
+pattern DOM_NODE_FILTER_SHOW_ATTRIBUTE = 2 :: Int32
+
+
+pattern DOM_NODE_FILTER_SHOW_ALL = 4294967295 :: Int32
+
+
+pattern DOM_NODE_FILTER_REJECT = 2 :: Int32
+
+
+pattern DOM_NODE_FILTER_ACCEPT = 1 :: Int32
+
+
+pattern DOM_NODE_ENTITY_REFERENCE_NODE = 5 :: Int32
+
+
+pattern DOM_NODE_ENTITY_NODE = 6 :: Int32
+
+
+pattern DOM_NODE_ELEMENT_NODE = 1 :: Int32
+
+
+pattern DOM_NODE_DOCUMENT_TYPE_NODE = 10 :: Int32
+
+
+pattern DOM_NODE_DOCUMENT_POSITION_PRECEDING = 2 :: Int32
+
+
+pattern DOM_NODE_DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC = 32 :: Int32
+
+
+pattern DOM_NODE_DOCUMENT_POSITION_FOLLOWING = 4 :: Int32
+
+
+pattern DOM_NODE_DOCUMENT_POSITION_DISCONNECTED = 1 :: Int32
+
+
+pattern DOM_NODE_DOCUMENT_POSITION_CONTAINS = 8 :: Int32
+
+
+pattern DOM_NODE_DOCUMENT_POSITION_CONTAINED_BY = 16 :: Int32
+
+
+pattern DOM_NODE_DOCUMENT_NODE = 9 :: Int32
+
+
+pattern DOM_NODE_DOCUMENT_FRAGMENT_NODE = 11 :: Int32
+
+
+pattern DOM_NODE_COMMENT_NODE = 8 :: Int32
+
+
+pattern DOM_NODE_CDATA_SECTION_NODE = 4 :: Int32
+
+
+pattern DOM_NODE_ATTRIBUTE_NODE = 2 :: Int32
+
+
+pattern DOM_KEYBOARD_EVENT_KEY_LOCATION_STANDARD = 0 :: Int32
+
+
+pattern DOM_KEYBOARD_EVENT_KEY_LOCATION_RIGHT = 2 :: Int32
+
+
+pattern DOM_KEYBOARD_EVENT_KEY_LOCATION_NUMPAD = 3 :: Int32
+
+
+pattern DOM_KEYBOARD_EVENT_KEY_LOCATION_LEFT = 1 :: Int32
+
+
+pattern DOM_EVENT_SELECT = 16384 :: Int32
+
+
+pattern DOM_EVENT_NONE = 0 :: Int32
+
+
+pattern DOM_EVENT_MOUSEUP = 2 :: Int32
+
+
+pattern DOM_EVENT_MOUSEOVER = 4 :: Int32
+
+
+pattern DOM_EVENT_MOUSEOUT = 8 :: Int32
+
+
+pattern DOM_EVENT_MOUSEMOVE = 16 :: Int32
+
+
+pattern DOM_EVENT_MOUSEDRAG = 32 :: Int32
+
+
+pattern DOM_EVENT_MOUSEDOWN = 1 :: Int32
+
+
+pattern DOM_EVENT_KEYUP = 512 :: Int32
+
+
+pattern DOM_EVENT_KEYPRESS = 1024 :: Int32
+
+
+pattern DOM_EVENT_KEYDOWN = 256 :: Int32
+
+
+pattern DOM_EVENT_FOCUS = 4096 :: Int32
+
+
+pattern DOM_EVENT_DRAGDROP = 2048 :: Int32
+
+
+pattern DOM_EVENT_DBLCLICK = 128 :: Int32
+
+
+pattern DOM_EVENT_CLICK = 64 :: Int32
+
+
+pattern DOM_EVENT_CHANGE = 32768 :: Int32
+
+
+pattern DOM_EVENT_CAPTURING_PHASE = 1 :: Int32
+
+
+pattern DOM_EVENT_BUBBLING_PHASE = 3 :: Int32
+
+
+pattern DOM_EVENT_BLUR = 8192 :: Int32
+
+
+pattern DOM_EVENT_AT_TARGET = 2 :: Int32
+
+
+pattern DOM_CSS_VALUE_CSS_VALUE_LIST = 2 :: Int32
+
+
+pattern DOM_CSS_VALUE_CSS_PRIMITIVE_VALUE = 1 :: Int32
+
+
+pattern DOM_CSS_VALUE_CSS_INHERIT = 0 :: Int32
+
+
+pattern DOM_CSS_VALUE_CSS_CUSTOM = 3 :: Int32
+
+
+pattern DOM_CSS_RULE_UNKNOWN_RULE = 0 :: Int32
+
+
+pattern DOM_CSS_RULE_STYLE_RULE = 1 :: Int32
+
+
+pattern DOM_CSS_RULE_PAGE_RULE = 6 :: Int32
+
+
+pattern DOM_CSS_RULE_MEDIA_RULE = 4 :: Int32
+
+
+pattern DOM_CSS_RULE_IMPORT_RULE = 3 :: Int32
+
+
+pattern DOM_CSS_RULE_FONT_FACE_RULE = 5 :: Int32
+
+
+pattern DOM_CSS_RULE_CHARSET_RULE = 2 :: Int32
+
+
diff --git a/GI/WebKit2WebExtension/Enums.hs b/GI/WebKit2WebExtension/Enums.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Enums.hs
@@ -0,0 +1,173 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Enums
+    ( 
+
+-- * Exported types
+    ContextMenuAction(..)                   ,
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+
+
+
+-- Enum ContextMenuAction
+
+data ContextMenuAction = 
+      ContextMenuActionNoAction
+    | ContextMenuActionOpenLink
+    | ContextMenuActionOpenLinkInNewWindow
+    | ContextMenuActionDownloadLinkToDisk
+    | ContextMenuActionCopyLinkToClipboard
+    | ContextMenuActionOpenImageInNewWindow
+    | ContextMenuActionDownloadImageToDisk
+    | ContextMenuActionCopyImageToClipboard
+    | ContextMenuActionCopyImageUrlToClipboard
+    | ContextMenuActionOpenFrameInNewWindow
+    | ContextMenuActionGoBack
+    | ContextMenuActionGoForward
+    | ContextMenuActionStop
+    | ContextMenuActionReload
+    | ContextMenuActionCopy
+    | ContextMenuActionCut
+    | ContextMenuActionPaste
+    | ContextMenuActionDelete
+    | ContextMenuActionSelectAll
+    | ContextMenuActionInputMethods
+    | ContextMenuActionUnicode
+    | ContextMenuActionSpellingGuess
+    | ContextMenuActionNoGuessesFound
+    | ContextMenuActionIgnoreSpelling
+    | ContextMenuActionLearnSpelling
+    | ContextMenuActionIgnoreGrammar
+    | ContextMenuActionFontMenu
+    | ContextMenuActionBold
+    | ContextMenuActionItalic
+    | ContextMenuActionUnderline
+    | ContextMenuActionOutline
+    | ContextMenuActionInspectElement
+    | ContextMenuActionOpenVideoInNewWindow
+    | ContextMenuActionOpenAudioInNewWindow
+    | ContextMenuActionCopyVideoLinkToClipboard
+    | ContextMenuActionCopyAudioLinkToClipboard
+    | ContextMenuActionToggleMediaControls
+    | ContextMenuActionToggleMediaLoop
+    | ContextMenuActionEnterVideoFullscreen
+    | ContextMenuActionMediaPlay
+    | ContextMenuActionMediaPause
+    | ContextMenuActionMediaMute
+    | ContextMenuActionDownloadVideoToDisk
+    | ContextMenuActionDownloadAudioToDisk
+    | ContextMenuActionCustom
+    | AnotherContextMenuAction Int
+    deriving (Show, Eq)
+
+instance Enum ContextMenuAction where
+    fromEnum ContextMenuActionNoAction = 0
+    fromEnum ContextMenuActionOpenLink = 1
+    fromEnum ContextMenuActionOpenLinkInNewWindow = 2
+    fromEnum ContextMenuActionDownloadLinkToDisk = 3
+    fromEnum ContextMenuActionCopyLinkToClipboard = 4
+    fromEnum ContextMenuActionOpenImageInNewWindow = 5
+    fromEnum ContextMenuActionDownloadImageToDisk = 6
+    fromEnum ContextMenuActionCopyImageToClipboard = 7
+    fromEnum ContextMenuActionCopyImageUrlToClipboard = 8
+    fromEnum ContextMenuActionOpenFrameInNewWindow = 9
+    fromEnum ContextMenuActionGoBack = 10
+    fromEnum ContextMenuActionGoForward = 11
+    fromEnum ContextMenuActionStop = 12
+    fromEnum ContextMenuActionReload = 13
+    fromEnum ContextMenuActionCopy = 14
+    fromEnum ContextMenuActionCut = 15
+    fromEnum ContextMenuActionPaste = 16
+    fromEnum ContextMenuActionDelete = 17
+    fromEnum ContextMenuActionSelectAll = 18
+    fromEnum ContextMenuActionInputMethods = 19
+    fromEnum ContextMenuActionUnicode = 20
+    fromEnum ContextMenuActionSpellingGuess = 21
+    fromEnum ContextMenuActionNoGuessesFound = 22
+    fromEnum ContextMenuActionIgnoreSpelling = 23
+    fromEnum ContextMenuActionLearnSpelling = 24
+    fromEnum ContextMenuActionIgnoreGrammar = 25
+    fromEnum ContextMenuActionFontMenu = 26
+    fromEnum ContextMenuActionBold = 27
+    fromEnum ContextMenuActionItalic = 28
+    fromEnum ContextMenuActionUnderline = 29
+    fromEnum ContextMenuActionOutline = 30
+    fromEnum ContextMenuActionInspectElement = 31
+    fromEnum ContextMenuActionOpenVideoInNewWindow = 32
+    fromEnum ContextMenuActionOpenAudioInNewWindow = 33
+    fromEnum ContextMenuActionCopyVideoLinkToClipboard = 34
+    fromEnum ContextMenuActionCopyAudioLinkToClipboard = 35
+    fromEnum ContextMenuActionToggleMediaControls = 36
+    fromEnum ContextMenuActionToggleMediaLoop = 37
+    fromEnum ContextMenuActionEnterVideoFullscreen = 38
+    fromEnum ContextMenuActionMediaPlay = 39
+    fromEnum ContextMenuActionMediaPause = 40
+    fromEnum ContextMenuActionMediaMute = 41
+    fromEnum ContextMenuActionDownloadVideoToDisk = 42
+    fromEnum ContextMenuActionDownloadAudioToDisk = 43
+    fromEnum ContextMenuActionCustom = 10000
+    fromEnum (AnotherContextMenuAction k) = k
+
+    toEnum 0 = ContextMenuActionNoAction
+    toEnum 1 = ContextMenuActionOpenLink
+    toEnum 2 = ContextMenuActionOpenLinkInNewWindow
+    toEnum 3 = ContextMenuActionDownloadLinkToDisk
+    toEnum 4 = ContextMenuActionCopyLinkToClipboard
+    toEnum 5 = ContextMenuActionOpenImageInNewWindow
+    toEnum 6 = ContextMenuActionDownloadImageToDisk
+    toEnum 7 = ContextMenuActionCopyImageToClipboard
+    toEnum 8 = ContextMenuActionCopyImageUrlToClipboard
+    toEnum 9 = ContextMenuActionOpenFrameInNewWindow
+    toEnum 10 = ContextMenuActionGoBack
+    toEnum 11 = ContextMenuActionGoForward
+    toEnum 12 = ContextMenuActionStop
+    toEnum 13 = ContextMenuActionReload
+    toEnum 14 = ContextMenuActionCopy
+    toEnum 15 = ContextMenuActionCut
+    toEnum 16 = ContextMenuActionPaste
+    toEnum 17 = ContextMenuActionDelete
+    toEnum 18 = ContextMenuActionSelectAll
+    toEnum 19 = ContextMenuActionInputMethods
+    toEnum 20 = ContextMenuActionUnicode
+    toEnum 21 = ContextMenuActionSpellingGuess
+    toEnum 22 = ContextMenuActionNoGuessesFound
+    toEnum 23 = ContextMenuActionIgnoreSpelling
+    toEnum 24 = ContextMenuActionLearnSpelling
+    toEnum 25 = ContextMenuActionIgnoreGrammar
+    toEnum 26 = ContextMenuActionFontMenu
+    toEnum 27 = ContextMenuActionBold
+    toEnum 28 = ContextMenuActionItalic
+    toEnum 29 = ContextMenuActionUnderline
+    toEnum 30 = ContextMenuActionOutline
+    toEnum 31 = ContextMenuActionInspectElement
+    toEnum 32 = ContextMenuActionOpenVideoInNewWindow
+    toEnum 33 = ContextMenuActionOpenAudioInNewWindow
+    toEnum 34 = ContextMenuActionCopyVideoLinkToClipboard
+    toEnum 35 = ContextMenuActionCopyAudioLinkToClipboard
+    toEnum 36 = ContextMenuActionToggleMediaControls
+    toEnum 37 = ContextMenuActionToggleMediaLoop
+    toEnum 38 = ContextMenuActionEnterVideoFullscreen
+    toEnum 39 = ContextMenuActionMediaPlay
+    toEnum 40 = ContextMenuActionMediaPause
+    toEnum 41 = ContextMenuActionMediaMute
+    toEnum 42 = ContextMenuActionDownloadVideoToDisk
+    toEnum 43 = ContextMenuActionDownloadAudioToDisk
+    toEnum 10000 = ContextMenuActionCustom
+    toEnum k = AnotherContextMenuAction k
+
+
diff --git a/GI/WebKit2WebExtension/Flags.hs b/GI/WebKit2WebExtension/Flags.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Flags.hs
@@ -0,0 +1,61 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Flags
+    ( 
+
+-- * Exported types
+    HitTestResultContext(..)                ,
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+
+
+
+-- Flags HitTestResultContext
+
+data HitTestResultContext = 
+      HitTestResultContextDocument
+    | HitTestResultContextLink
+    | HitTestResultContextImage
+    | HitTestResultContextMedia
+    | HitTestResultContextEditable
+    | HitTestResultContextScrollbar
+    | HitTestResultContextSelection
+    | AnotherHitTestResultContext Int
+    deriving (Show, Eq)
+
+instance Enum HitTestResultContext where
+    fromEnum HitTestResultContextDocument = 2
+    fromEnum HitTestResultContextLink = 4
+    fromEnum HitTestResultContextImage = 8
+    fromEnum HitTestResultContextMedia = 16
+    fromEnum HitTestResultContextEditable = 32
+    fromEnum HitTestResultContextScrollbar = 64
+    fromEnum HitTestResultContextSelection = 128
+    fromEnum (AnotherHitTestResultContext k) = k
+
+    toEnum 2 = HitTestResultContextDocument
+    toEnum 4 = HitTestResultContextLink
+    toEnum 8 = HitTestResultContextImage
+    toEnum 16 = HitTestResultContextMedia
+    toEnum 32 = HitTestResultContextEditable
+    toEnum 64 = HitTestResultContextScrollbar
+    toEnum 128 = HitTestResultContextSelection
+    toEnum k = AnotherHitTestResultContext k
+
+instance IsGFlag HitTestResultContext
+
+
diff --git a/GI/WebKit2WebExtension/Interfaces.hs b/GI/WebKit2WebExtension/Interfaces.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Interfaces.hs
@@ -0,0 +1,30 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Interfaces
+    (     module GI.WebKit2WebExtension.Interfaces.DOMEventTarget,
+    module GI.WebKit2WebExtension.Interfaces.DOMNodeFilter,
+    module GI.WebKit2WebExtension.Interfaces.DOMXPathNSResolver,
+
+
+    ) where
+
+import GI.WebKit2WebExtension.Interfaces.DOMEventTarget
+import GI.WebKit2WebExtension.Interfaces.DOMNodeFilter
+import GI.WebKit2WebExtension.Interfaces.DOMXPathNSResolver
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+
+
diff --git a/GI/WebKit2WebExtension/Interfaces/DOMEventTarget.hs b/GI/WebKit2WebExtension/Interfaces/DOMEventTarget.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Interfaces/DOMEventTarget.hs
@@ -0,0 +1,180 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Interfaces.DOMEventTarget
+    ( 
+
+-- * Exported types
+    DOMEventTarget(..)                      ,
+    noDOMEventTarget                        ,
+    DOMEventTargetK                         ,
+    toDOMEventTarget                        ,
+
+
+ -- * Methods
+-- ** dOMEventTargetAddEventListener
+    dOMEventTargetAddEventListener          ,
+
+
+-- ** dOMEventTargetDispatchEvent
+    dOMEventTargetDispatchEvent             ,
+
+
+-- ** dOMEventTargetRemoveEventListener
+    dOMEventTargetRemoveEventListener       ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+-- interface DOMEventTarget 
+
+newtype DOMEventTarget = DOMEventTarget (ForeignPtr DOMEventTarget)
+noDOMEventTarget :: Maybe DOMEventTarget
+noDOMEventTarget = Nothing
+
+type instance AttributeList DOMEventTarget = DOMEventTargetAttributeList
+type DOMEventTargetAttributeList = ('[ ] :: [(Symbol, *)])
+
+type instance SignalList DOMEventTarget = DOMEventTargetSignalList
+type DOMEventTargetSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+foreign import ccall "webkit_dom_event_target_get_type"
+    c_webkit_dom_event_target_get_type :: IO GType
+
+type instance ParentTypes DOMEventTarget = DOMEventTargetParentTypes
+type DOMEventTargetParentTypes = '[GObject.Object]
+
+instance GObject DOMEventTarget where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_event_target_get_type
+    
+
+class GObject o => DOMEventTargetK o
+instance (GObject o, IsDescendantOf DOMEventTarget o) => DOMEventTargetK o
+
+toDOMEventTarget :: DOMEventTargetK o => o -> IO DOMEventTarget
+toDOMEventTarget = unsafeCastTo DOMEventTarget
+
+-- method DOMEventTarget::add_event_listener
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEventTarget", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "event_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "handler", argType = TInterface "GObject" "Closure", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "use_capture", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEventTarget", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "event_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "handler", argType = TInterface "GObject" "Closure", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "use_capture", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_target_add_event_listener_with_closure" webkit_dom_event_target_add_event_listener_with_closure :: 
+    Ptr DOMEventTarget ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMEventTarget"
+    CString ->                              -- event_name : TBasicType TUTF8
+    Ptr Closure ->                          -- handler : TInterface "GObject" "Closure"
+    CInt ->                                 -- use_capture : TBasicType TBoolean
+    IO CInt
+
+
+dOMEventTargetAddEventListener ::
+    (MonadIO m, DOMEventTargetK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- event_name
+    Closure ->                              -- handler
+    Bool ->                                 -- use_capture
+    m Bool
+dOMEventTargetAddEventListener _obj event_name handler use_capture = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    event_name' <- textToCString event_name
+    let handler' = unsafeManagedPtrGetPtr handler
+    let use_capture' = (fromIntegral . fromEnum) use_capture
+    result <- webkit_dom_event_target_add_event_listener_with_closure _obj' event_name' handler' use_capture'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    touchManagedPtr handler
+    freeMem event_name'
+    return result'
+
+-- method DOMEventTarget::dispatch_event
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEventTarget", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "event", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEventTarget", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "event", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_target_dispatch_event" webkit_dom_event_target_dispatch_event :: 
+    Ptr DOMEventTarget ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMEventTarget"
+    Ptr DOMEvent ->                         -- event : TInterface "WebKit2WebExtension" "DOMEvent"
+    Ptr (Ptr GError) ->                     -- error
+    IO CInt
+
+
+dOMEventTargetDispatchEvent ::
+    (MonadIO m, DOMEventTargetK a, DOMEventK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- event
+    m ()
+dOMEventTargetDispatchEvent _obj event = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let event' = unsafeManagedPtrCastPtr event
+    onException (do
+        _ <- propagateGError $ webkit_dom_event_target_dispatch_event _obj' event'
+        touchManagedPtr _obj
+        touchManagedPtr event
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMEventTarget::remove_event_listener
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEventTarget", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "event_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "handler", argType = TInterface "GObject" "Closure", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "use_capture", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEventTarget", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "event_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "handler", argType = TInterface "GObject" "Closure", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "use_capture", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_target_remove_event_listener_with_closure" webkit_dom_event_target_remove_event_listener_with_closure :: 
+    Ptr DOMEventTarget ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMEventTarget"
+    CString ->                              -- event_name : TBasicType TUTF8
+    Ptr Closure ->                          -- handler : TInterface "GObject" "Closure"
+    CInt ->                                 -- use_capture : TBasicType TBoolean
+    IO CInt
+
+
+dOMEventTargetRemoveEventListener ::
+    (MonadIO m, DOMEventTargetK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- event_name
+    Closure ->                              -- handler
+    Bool ->                                 -- use_capture
+    m Bool
+dOMEventTargetRemoveEventListener _obj event_name handler use_capture = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    event_name' <- textToCString event_name
+    let handler' = unsafeManagedPtrGetPtr handler
+    let use_capture' = (fromIntegral . fromEnum) use_capture
+    result <- webkit_dom_event_target_remove_event_listener_with_closure _obj' event_name' handler' use_capture'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    touchManagedPtr handler
+    freeMem event_name'
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Interfaces/DOMEventTarget.hs-boot b/GI/WebKit2WebExtension/Interfaces/DOMEventTarget.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Interfaces/DOMEventTarget.hs-boot
@@ -0,0 +1,13 @@
+module GI.WebKit2WebExtension.Interfaces.DOMEventTarget where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMEventTarget = DOMEventTarget (ForeignPtr DOMEventTarget)
+instance GObject DOMEventTarget where
+class GObject o => DOMEventTargetK o
+instance (GObject o, IsDescendantOf DOMEventTarget o) => DOMEventTargetK o
diff --git a/GI/WebKit2WebExtension/Interfaces/DOMNodeFilter.hs b/GI/WebKit2WebExtension/Interfaces/DOMNodeFilter.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Interfaces/DOMNodeFilter.hs
@@ -0,0 +1,95 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Interfaces.DOMNodeFilter
+    ( 
+
+-- * Exported types
+    DOMNodeFilter(..)                       ,
+    noDOMNodeFilter                         ,
+    DOMNodeFilterK                          ,
+    toDOMNodeFilter                         ,
+
+
+ -- * Methods
+-- ** dOMNodeFilterAcceptNode
+    dOMNodeFilterAcceptNode                 ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+-- interface DOMNodeFilter 
+
+newtype DOMNodeFilter = DOMNodeFilter (ForeignPtr DOMNodeFilter)
+noDOMNodeFilter :: Maybe DOMNodeFilter
+noDOMNodeFilter = Nothing
+
+type instance AttributeList DOMNodeFilter = DOMNodeFilterAttributeList
+type DOMNodeFilterAttributeList = ('[ ] :: [(Symbol, *)])
+
+type instance SignalList DOMNodeFilter = DOMNodeFilterSignalList
+type DOMNodeFilterSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+foreign import ccall "webkit_dom_node_filter_get_type"
+    c_webkit_dom_node_filter_get_type :: IO GType
+
+type instance ParentTypes DOMNodeFilter = DOMNodeFilterParentTypes
+type DOMNodeFilterParentTypes = '[GObject.Object]
+
+instance GObject DOMNodeFilter where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_node_filter_get_type
+    
+
+class GObject o => DOMNodeFilterK o
+instance (GObject o, IsDescendantOf DOMNodeFilter o) => DOMNodeFilterK o
+
+toDOMNodeFilter :: DOMNodeFilterK o => o -> IO DOMNodeFilter
+toDOMNodeFilter = unsafeCastTo DOMNodeFilter
+
+-- method DOMNodeFilter::accept_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeFilter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "node", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeFilter", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "node", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt16
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_filter_accept_node" webkit_dom_node_filter_accept_node :: 
+    Ptr DOMNodeFilter ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMNodeFilter"
+    Ptr DOMNode ->                          -- node : TInterface "WebKit2WebExtension" "DOMNode"
+    IO Int16
+
+
+dOMNodeFilterAcceptNode ::
+    (MonadIO m, DOMNodeFilterK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- node
+    m Int16
+dOMNodeFilterAcceptNode _obj node = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let node' = unsafeManagedPtrCastPtr node
+    result <- webkit_dom_node_filter_accept_node _obj' node'
+    touchManagedPtr _obj
+    touchManagedPtr node
+    return result
+
+
diff --git a/GI/WebKit2WebExtension/Interfaces/DOMNodeFilter.hs-boot b/GI/WebKit2WebExtension/Interfaces/DOMNodeFilter.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Interfaces/DOMNodeFilter.hs-boot
@@ -0,0 +1,13 @@
+module GI.WebKit2WebExtension.Interfaces.DOMNodeFilter where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMNodeFilter = DOMNodeFilter (ForeignPtr DOMNodeFilter)
+instance GObject DOMNodeFilter where
+class GObject o => DOMNodeFilterK o
+instance (GObject o, IsDescendantOf DOMNodeFilter o) => DOMNodeFilterK o
diff --git a/GI/WebKit2WebExtension/Interfaces/DOMXPathNSResolver.hs b/GI/WebKit2WebExtension/Interfaces/DOMXPathNSResolver.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Interfaces/DOMXPathNSResolver.hs
@@ -0,0 +1,98 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Interfaces.DOMXPathNSResolver
+    ( 
+
+-- * Exported types
+    DOMXPathNSResolver(..)                  ,
+    noDOMXPathNSResolver                    ,
+    DOMXPathNSResolverK                     ,
+    toDOMXPathNSResolver                    ,
+
+
+ -- * Methods
+-- ** dOMXPathNSResolverLookupNamespaceUri
+    dOMXPathNSResolverLookupNamespaceUri    ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+-- interface DOMXPathNSResolver 
+
+newtype DOMXPathNSResolver = DOMXPathNSResolver (ForeignPtr DOMXPathNSResolver)
+noDOMXPathNSResolver :: Maybe DOMXPathNSResolver
+noDOMXPathNSResolver = Nothing
+
+type instance AttributeList DOMXPathNSResolver = DOMXPathNSResolverAttributeList
+type DOMXPathNSResolverAttributeList = ('[ ] :: [(Symbol, *)])
+
+type instance SignalList DOMXPathNSResolver = DOMXPathNSResolverSignalList
+type DOMXPathNSResolverSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+foreign import ccall "webkit_dom_xpath_ns_resolver_get_type"
+    c_webkit_dom_xpath_ns_resolver_get_type :: IO GType
+
+type instance ParentTypes DOMXPathNSResolver = DOMXPathNSResolverParentTypes
+type DOMXPathNSResolverParentTypes = '[GObject.Object]
+
+instance GObject DOMXPathNSResolver where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_xpath_ns_resolver_get_type
+    
+
+class GObject o => DOMXPathNSResolverK o
+instance (GObject o, IsDescendantOf DOMXPathNSResolver o) => DOMXPathNSResolverK o
+
+toDOMXPathNSResolver :: DOMXPathNSResolverK o => o -> IO DOMXPathNSResolver
+toDOMXPathNSResolver = unsafeCastTo DOMXPathNSResolver
+
+-- method DOMXPathNSResolver::lookup_namespace_uri
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathNSResolver", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "prefix", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathNSResolver", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "prefix", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_xpath_ns_resolver_lookup_namespace_uri" webkit_dom_xpath_ns_resolver_lookup_namespace_uri :: 
+    Ptr DOMXPathNSResolver ->               -- _obj : TInterface "WebKit2WebExtension" "DOMXPathNSResolver"
+    CString ->                              -- prefix : TBasicType TUTF8
+    IO CString
+
+
+dOMXPathNSResolverLookupNamespaceUri ::
+    (MonadIO m, DOMXPathNSResolverK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- prefix
+    m T.Text
+dOMXPathNSResolverLookupNamespaceUri _obj prefix = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    prefix' <- textToCString prefix
+    result <- webkit_dom_xpath_ns_resolver_lookup_namespace_uri _obj' prefix'
+    checkUnexpectedReturnNULL "webkit_dom_xpath_ns_resolver_lookup_namespace_uri" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    freeMem prefix'
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Interfaces/DOMXPathNSResolver.hs-boot b/GI/WebKit2WebExtension/Interfaces/DOMXPathNSResolver.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Interfaces/DOMXPathNSResolver.hs-boot
@@ -0,0 +1,13 @@
+module GI.WebKit2WebExtension.Interfaces.DOMXPathNSResolver where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMXPathNSResolver = DOMXPathNSResolver (ForeignPtr DOMXPathNSResolver)
+instance GObject DOMXPathNSResolver where
+class GObject o => DOMXPathNSResolverK o
+instance (GObject o, IsDescendantOf DOMXPathNSResolver o) => DOMXPathNSResolverK o
diff --git a/GI/WebKit2WebExtension/Objects.hs b/GI/WebKit2WebExtension/Objects.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects.hs
@@ -0,0 +1,236 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects
+    (     module GI.WebKit2WebExtension.Objects.ContextMenu,
+    module GI.WebKit2WebExtension.Objects.ContextMenuItem,
+    module GI.WebKit2WebExtension.Objects.DOMAttr,
+    module GI.WebKit2WebExtension.Objects.DOMBlob,
+    module GI.WebKit2WebExtension.Objects.DOMCDATASection,
+    module GI.WebKit2WebExtension.Objects.DOMCSSRule,
+    module GI.WebKit2WebExtension.Objects.DOMCSSRuleList,
+    module GI.WebKit2WebExtension.Objects.DOMCSSStyleDeclaration,
+    module GI.WebKit2WebExtension.Objects.DOMCSSStyleSheet,
+    module GI.WebKit2WebExtension.Objects.DOMCSSValue,
+    module GI.WebKit2WebExtension.Objects.DOMCharacterData,
+    module GI.WebKit2WebExtension.Objects.DOMComment,
+    module GI.WebKit2WebExtension.Objects.DOMDOMImplementation,
+    module GI.WebKit2WebExtension.Objects.DOMDOMWindow,
+    module GI.WebKit2WebExtension.Objects.DOMDocument,
+    module GI.WebKit2WebExtension.Objects.DOMDocumentFragment,
+    module GI.WebKit2WebExtension.Objects.DOMDocumentType,
+    module GI.WebKit2WebExtension.Objects.DOMElement,
+    module GI.WebKit2WebExtension.Objects.DOMEntityReference,
+    module GI.WebKit2WebExtension.Objects.DOMEvent,
+    module GI.WebKit2WebExtension.Objects.DOMFile,
+    module GI.WebKit2WebExtension.Objects.DOMFileList,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLAnchorElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLAppletElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLAreaElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLBRElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLBaseElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLBaseFontElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLBodyElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLCanvasElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLCollection,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLDListElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLDirectoryElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLDivElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLDocument,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLEmbedElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLFieldSetElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLFontElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLFormElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLFrameElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLFrameSetElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLHRElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLHeadElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLHeadingElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLHtmlElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLIFrameElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLImageElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLInputElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLLIElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLLabelElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLLegendElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLLinkElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLMapElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLMarqueeElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLMenuElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLMetaElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLModElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLOListElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLObjectElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLOptGroupElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLOptionElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLOptionsCollection,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLParagraphElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLParamElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLPreElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLQuoteElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLScriptElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLStyleElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTableCaptionElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTableCellElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTableColElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTableElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTableRowElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTableSectionElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTextAreaElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTitleElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLUListElement,
+    module GI.WebKit2WebExtension.Objects.DOMKeyboardEvent,
+    module GI.WebKit2WebExtension.Objects.DOMMediaList,
+    module GI.WebKit2WebExtension.Objects.DOMMouseEvent,
+    module GI.WebKit2WebExtension.Objects.DOMNamedNodeMap,
+    module GI.WebKit2WebExtension.Objects.DOMNode,
+    module GI.WebKit2WebExtension.Objects.DOMNodeIterator,
+    module GI.WebKit2WebExtension.Objects.DOMNodeList,
+    module GI.WebKit2WebExtension.Objects.DOMObject,
+    module GI.WebKit2WebExtension.Objects.DOMProcessingInstruction,
+    module GI.WebKit2WebExtension.Objects.DOMRange,
+    module GI.WebKit2WebExtension.Objects.DOMStyleSheet,
+    module GI.WebKit2WebExtension.Objects.DOMStyleSheetList,
+    module GI.WebKit2WebExtension.Objects.DOMText,
+    module GI.WebKit2WebExtension.Objects.DOMTreeWalker,
+    module GI.WebKit2WebExtension.Objects.DOMUIEvent,
+    module GI.WebKit2WebExtension.Objects.DOMWheelEvent,
+    module GI.WebKit2WebExtension.Objects.DOMXPathExpression,
+    module GI.WebKit2WebExtension.Objects.DOMXPathResult,
+    module GI.WebKit2WebExtension.Objects.Frame,
+    module GI.WebKit2WebExtension.Objects.HitTestResult,
+    module GI.WebKit2WebExtension.Objects.ScriptWorld,
+    module GI.WebKit2WebExtension.Objects.URIRequest,
+    module GI.WebKit2WebExtension.Objects.URIResponse,
+    module GI.WebKit2WebExtension.Objects.WebExtension,
+    module GI.WebKit2WebExtension.Objects.WebHitTestResult,
+    module GI.WebKit2WebExtension.Objects.WebPage,
+
+
+    ) where
+
+import GI.WebKit2WebExtension.Objects.ContextMenu
+import GI.WebKit2WebExtension.Objects.ContextMenuItem
+import GI.WebKit2WebExtension.Objects.DOMAttr
+import GI.WebKit2WebExtension.Objects.DOMBlob
+import GI.WebKit2WebExtension.Objects.DOMCDATASection
+import GI.WebKit2WebExtension.Objects.DOMCSSRule
+import GI.WebKit2WebExtension.Objects.DOMCSSRuleList
+import GI.WebKit2WebExtension.Objects.DOMCSSStyleDeclaration
+import GI.WebKit2WebExtension.Objects.DOMCSSStyleSheet
+import GI.WebKit2WebExtension.Objects.DOMCSSValue
+import GI.WebKit2WebExtension.Objects.DOMCharacterData
+import GI.WebKit2WebExtension.Objects.DOMComment
+import GI.WebKit2WebExtension.Objects.DOMDOMImplementation
+import GI.WebKit2WebExtension.Objects.DOMDOMWindow
+import GI.WebKit2WebExtension.Objects.DOMDocument
+import GI.WebKit2WebExtension.Objects.DOMDocumentFragment
+import GI.WebKit2WebExtension.Objects.DOMDocumentType
+import GI.WebKit2WebExtension.Objects.DOMElement
+import GI.WebKit2WebExtension.Objects.DOMEntityReference
+import GI.WebKit2WebExtension.Objects.DOMEvent
+import GI.WebKit2WebExtension.Objects.DOMFile
+import GI.WebKit2WebExtension.Objects.DOMFileList
+import GI.WebKit2WebExtension.Objects.DOMHTMLAnchorElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLAppletElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLAreaElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLBRElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLBaseElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLBaseFontElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLBodyElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLCanvasElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLCollection
+import GI.WebKit2WebExtension.Objects.DOMHTMLDListElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLDirectoryElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLDivElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLDocument
+import GI.WebKit2WebExtension.Objects.DOMHTMLElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLEmbedElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLFieldSetElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLFontElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLFormElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLFrameElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLFrameSetElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLHRElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLHeadElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLHeadingElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLHtmlElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLIFrameElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLImageElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLInputElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLLIElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLLabelElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLLegendElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLLinkElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLMapElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLMarqueeElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLMenuElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLMetaElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLModElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLOListElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLObjectElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLOptGroupElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLOptionElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLOptionsCollection
+import GI.WebKit2WebExtension.Objects.DOMHTMLParagraphElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLParamElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLPreElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLQuoteElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLScriptElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLStyleElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLTableCaptionElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLTableCellElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLTableColElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLTableElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLTableRowElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLTableSectionElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLTextAreaElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLTitleElement
+import GI.WebKit2WebExtension.Objects.DOMHTMLUListElement
+import GI.WebKit2WebExtension.Objects.DOMKeyboardEvent
+import GI.WebKit2WebExtension.Objects.DOMMediaList
+import GI.WebKit2WebExtension.Objects.DOMMouseEvent
+import GI.WebKit2WebExtension.Objects.DOMNamedNodeMap
+import GI.WebKit2WebExtension.Objects.DOMNode
+import GI.WebKit2WebExtension.Objects.DOMNodeIterator
+import GI.WebKit2WebExtension.Objects.DOMNodeList
+import GI.WebKit2WebExtension.Objects.DOMObject
+import GI.WebKit2WebExtension.Objects.DOMProcessingInstruction
+import GI.WebKit2WebExtension.Objects.DOMRange
+import GI.WebKit2WebExtension.Objects.DOMStyleSheet
+import GI.WebKit2WebExtension.Objects.DOMStyleSheetList
+import GI.WebKit2WebExtension.Objects.DOMText
+import GI.WebKit2WebExtension.Objects.DOMTreeWalker
+import GI.WebKit2WebExtension.Objects.DOMUIEvent
+import GI.WebKit2WebExtension.Objects.DOMWheelEvent
+import GI.WebKit2WebExtension.Objects.DOMXPathExpression
+import GI.WebKit2WebExtension.Objects.DOMXPathResult
+import GI.WebKit2WebExtension.Objects.Frame
+import GI.WebKit2WebExtension.Objects.HitTestResult
+import GI.WebKit2WebExtension.Objects.ScriptWorld
+import GI.WebKit2WebExtension.Objects.URIRequest
+import GI.WebKit2WebExtension.Objects.URIResponse
+import GI.WebKit2WebExtension.Objects.WebExtension
+import GI.WebKit2WebExtension.Objects.WebHitTestResult
+import GI.WebKit2WebExtension.Objects.WebPage
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+
+
diff --git a/GI/WebKit2WebExtension/Objects/ContextMenu.hs b/GI/WebKit2WebExtension/Objects/ContextMenu.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/ContextMenu.hs
@@ -0,0 +1,368 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.ContextMenu
+    ( 
+
+-- * Exported types
+    ContextMenu(..)                         ,
+    ContextMenuK                            ,
+    toContextMenu                           ,
+    noContextMenu                           ,
+
+
+ -- * Methods
+-- ** contextMenuAppend
+    contextMenuAppend                       ,
+
+
+-- ** contextMenuGetNItems
+    contextMenuGetNItems                    ,
+
+
+-- ** contextMenuGetUserData
+    contextMenuGetUserData                  ,
+
+
+-- ** contextMenuInsert
+    contextMenuInsert                       ,
+
+
+-- ** contextMenuMoveItem
+    contextMenuMoveItem                     ,
+
+
+-- ** contextMenuNew
+    contextMenuNew                          ,
+
+
+-- ** contextMenuPrepend
+    contextMenuPrepend                      ,
+
+
+-- ** contextMenuRemove
+    contextMenuRemove                       ,
+
+
+-- ** contextMenuRemoveAll
+    contextMenuRemoveAll                    ,
+
+
+-- ** contextMenuSetUserData
+    contextMenuSetUserData                  ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype ContextMenu = ContextMenu (ForeignPtr ContextMenu)
+foreign import ccall "webkit_context_menu_get_type"
+    c_webkit_context_menu_get_type :: IO GType
+
+type instance ParentTypes ContextMenu = ContextMenuParentTypes
+type ContextMenuParentTypes = '[GObject.Object]
+
+instance GObject ContextMenu where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_context_menu_get_type
+    
+
+class GObject o => ContextMenuK o
+instance (GObject o, IsDescendantOf ContextMenu o) => ContextMenuK o
+
+toContextMenu :: ContextMenuK o => o -> IO ContextMenu
+toContextMenu = unsafeCastTo ContextMenu
+
+noContextMenu :: Maybe ContextMenu
+noContextMenu = Nothing
+
+type instance AttributeList ContextMenu = ContextMenuAttributeList
+type ContextMenuAttributeList = ('[ ] :: [(Symbol, *)])
+
+type instance SignalList ContextMenu = ContextMenuSignalList
+type ContextMenuSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method ContextMenu::new
+-- method type : Constructor
+-- Args : []
+-- Lengths : []
+-- hInArgs : []
+-- returnType : TInterface "WebKit2WebExtension" "ContextMenu"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_new" webkit_context_menu_new :: 
+    IO (Ptr ContextMenu)
+
+
+contextMenuNew ::
+    (MonadIO m) =>
+    m ContextMenu
+contextMenuNew  = liftIO $ do
+    result <- webkit_context_menu_new
+    checkUnexpectedReturnNULL "webkit_context_menu_new" result
+    result' <- (wrapObject ContextMenu) result
+    return result'
+
+-- method ContextMenu::append
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "item", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "item", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_append" webkit_context_menu_append :: 
+    Ptr ContextMenu ->                      -- _obj : TInterface "WebKit2WebExtension" "ContextMenu"
+    Ptr ContextMenuItem ->                  -- item : TInterface "WebKit2WebExtension" "ContextMenuItem"
+    IO ()
+
+
+contextMenuAppend ::
+    (MonadIO m, ContextMenuK a, ContextMenuItemK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- item
+    m ()
+contextMenuAppend _obj item = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let item' = unsafeManagedPtrCastPtr item
+    webkit_context_menu_append _obj' item'
+    touchManagedPtr _obj
+    touchManagedPtr item
+    return ()
+
+-- method ContextMenu::get_n_items
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt32
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_get_n_items" webkit_context_menu_get_n_items :: 
+    Ptr ContextMenu ->                      -- _obj : TInterface "WebKit2WebExtension" "ContextMenu"
+    IO Word32
+
+
+contextMenuGetNItems ::
+    (MonadIO m, ContextMenuK a) =>
+    a ->                                    -- _obj
+    m Word32
+contextMenuGetNItems _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_context_menu_get_n_items _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method ContextMenu::get_user_data
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TVariant
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_get_user_data" webkit_context_menu_get_user_data :: 
+    Ptr ContextMenu ->                      -- _obj : TInterface "WebKit2WebExtension" "ContextMenu"
+    IO (Ptr GVariant)
+
+
+contextMenuGetUserData ::
+    (MonadIO m, ContextMenuK a) =>
+    a ->                                    -- _obj
+    m GVariant
+contextMenuGetUserData _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_context_menu_get_user_data _obj'
+    checkUnexpectedReturnNULL "webkit_context_menu_get_user_data" result
+    result' <- wrapGVariantPtr result
+    touchManagedPtr _obj
+    return result'
+
+-- method ContextMenu::insert
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "item", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "position", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "item", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "position", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_insert" webkit_context_menu_insert :: 
+    Ptr ContextMenu ->                      -- _obj : TInterface "WebKit2WebExtension" "ContextMenu"
+    Ptr ContextMenuItem ->                  -- item : TInterface "WebKit2WebExtension" "ContextMenuItem"
+    Int32 ->                                -- position : TBasicType TInt32
+    IO ()
+
+
+contextMenuInsert ::
+    (MonadIO m, ContextMenuK a, ContextMenuItemK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- item
+    Int32 ->                                -- position
+    m ()
+contextMenuInsert _obj item position = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let item' = unsafeManagedPtrCastPtr item
+    webkit_context_menu_insert _obj' item' position
+    touchManagedPtr _obj
+    touchManagedPtr item
+    return ()
+
+-- method ContextMenu::move_item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "item", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "position", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "item", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "position", argType = TBasicType TInt32, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_move_item" webkit_context_menu_move_item :: 
+    Ptr ContextMenu ->                      -- _obj : TInterface "WebKit2WebExtension" "ContextMenu"
+    Ptr ContextMenuItem ->                  -- item : TInterface "WebKit2WebExtension" "ContextMenuItem"
+    Int32 ->                                -- position : TBasicType TInt32
+    IO ()
+
+
+contextMenuMoveItem ::
+    (MonadIO m, ContextMenuK a, ContextMenuItemK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- item
+    Int32 ->                                -- position
+    m ()
+contextMenuMoveItem _obj item position = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let item' = unsafeManagedPtrCastPtr item
+    webkit_context_menu_move_item _obj' item' position
+    touchManagedPtr _obj
+    touchManagedPtr item
+    return ()
+
+-- method ContextMenu::prepend
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "item", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "item", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_prepend" webkit_context_menu_prepend :: 
+    Ptr ContextMenu ->                      -- _obj : TInterface "WebKit2WebExtension" "ContextMenu"
+    Ptr ContextMenuItem ->                  -- item : TInterface "WebKit2WebExtension" "ContextMenuItem"
+    IO ()
+
+
+contextMenuPrepend ::
+    (MonadIO m, ContextMenuK a, ContextMenuItemK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- item
+    m ()
+contextMenuPrepend _obj item = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let item' = unsafeManagedPtrCastPtr item
+    webkit_context_menu_prepend _obj' item'
+    touchManagedPtr _obj
+    touchManagedPtr item
+    return ()
+
+-- method ContextMenu::remove
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "item", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "item", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_remove" webkit_context_menu_remove :: 
+    Ptr ContextMenu ->                      -- _obj : TInterface "WebKit2WebExtension" "ContextMenu"
+    Ptr ContextMenuItem ->                  -- item : TInterface "WebKit2WebExtension" "ContextMenuItem"
+    IO ()
+
+
+contextMenuRemove ::
+    (MonadIO m, ContextMenuK a, ContextMenuItemK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- item
+    m ()
+contextMenuRemove _obj item = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let item' = unsafeManagedPtrCastPtr item
+    webkit_context_menu_remove _obj' item'
+    touchManagedPtr _obj
+    touchManagedPtr item
+    return ()
+
+-- method ContextMenu::remove_all
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_remove_all" webkit_context_menu_remove_all :: 
+    Ptr ContextMenu ->                      -- _obj : TInterface "WebKit2WebExtension" "ContextMenu"
+    IO ()
+
+
+contextMenuRemoveAll ::
+    (MonadIO m, ContextMenuK a) =>
+    a ->                                    -- _obj
+    m ()
+contextMenuRemoveAll _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_context_menu_remove_all _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method ContextMenu::set_user_data
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "user_data", argType = TVariant, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "user_data", argType = TVariant, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_set_user_data" webkit_context_menu_set_user_data :: 
+    Ptr ContextMenu ->                      -- _obj : TInterface "WebKit2WebExtension" "ContextMenu"
+    Ptr GVariant ->                         -- user_data : TVariant
+    IO ()
+
+
+contextMenuSetUserData ::
+    (MonadIO m, ContextMenuK a) =>
+    a ->                                    -- _obj
+    GVariant ->                             -- user_data
+    m ()
+contextMenuSetUserData _obj user_data = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let user_data' = unsafeManagedPtrGetPtr user_data
+    webkit_context_menu_set_user_data _obj' user_data'
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/ContextMenu.hs-boot b/GI/WebKit2WebExtension/Objects/ContextMenu.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/ContextMenu.hs-boot
@@ -0,0 +1,13 @@
+module GI.WebKit2WebExtension.Objects.ContextMenu where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype ContextMenu = ContextMenu (ForeignPtr ContextMenu)
+instance GObject ContextMenu where
+class GObject o => ContextMenuK o
+instance (GObject o, IsDescendantOf ContextMenu o) => ContextMenuK o
diff --git a/GI/WebKit2WebExtension/Objects/ContextMenuItem.hs b/GI/WebKit2WebExtension/Objects/ContextMenuItem.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/ContextMenuItem.hs
@@ -0,0 +1,304 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.ContextMenuItem
+    ( 
+
+-- * Exported types
+    ContextMenuItem(..)                     ,
+    ContextMenuItemK                        ,
+    toContextMenuItem                       ,
+    noContextMenuItem                       ,
+
+
+ -- * Methods
+-- ** contextMenuItemGetStockAction
+    contextMenuItemGetStockAction           ,
+
+
+-- ** contextMenuItemIsSeparator
+    contextMenuItemIsSeparator              ,
+
+
+-- ** contextMenuItemNew
+    contextMenuItemNew                      ,
+
+
+-- ** contextMenuItemNewFromStockAction
+    contextMenuItemNewFromStockAction       ,
+
+
+-- ** contextMenuItemNewFromStockActionWithLabel
+    contextMenuItemNewFromStockActionWithLabel,
+
+
+-- ** contextMenuItemNewSeparator
+    contextMenuItemNewSeparator             ,
+
+
+-- ** contextMenuItemNewWithSubmenu
+    contextMenuItemNewWithSubmenu           ,
+
+
+-- ** contextMenuItemSetSubmenu
+    contextMenuItemSetSubmenu               ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+import qualified GI.Gtk as Gtk
+
+newtype ContextMenuItem = ContextMenuItem (ForeignPtr ContextMenuItem)
+foreign import ccall "webkit_context_menu_item_get_type"
+    c_webkit_context_menu_item_get_type :: IO GType
+
+type instance ParentTypes ContextMenuItem = ContextMenuItemParentTypes
+type ContextMenuItemParentTypes = '[GObject.Object]
+
+instance GObject ContextMenuItem where
+    gobjectIsInitiallyUnowned _ = True
+    gobjectType _ = c_webkit_context_menu_item_get_type
+    
+
+class GObject o => ContextMenuItemK o
+instance (GObject o, IsDescendantOf ContextMenuItem o) => ContextMenuItemK o
+
+toContextMenuItem :: ContextMenuItemK o => o -> IO ContextMenuItem
+toContextMenuItem = unsafeCastTo ContextMenuItem
+
+noContextMenuItem :: Maybe ContextMenuItem
+noContextMenuItem = Nothing
+
+type instance AttributeList ContextMenuItem = ContextMenuItemAttributeList
+type ContextMenuItemAttributeList = ('[ ] :: [(Symbol, *)])
+
+type instance SignalList ContextMenuItem = ContextMenuItemSignalList
+type ContextMenuItemSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method ContextMenuItem::new
+-- method type : Constructor
+-- Args : [Arg {argName = "action", argType = TInterface "Gtk" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "action", argType = TInterface "Gtk" "Action", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "ContextMenuItem"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_item_new" webkit_context_menu_item_new :: 
+    Ptr Gtk.Action ->                       -- action : TInterface "Gtk" "Action"
+    IO (Ptr ContextMenuItem)
+
+
+contextMenuItemNew ::
+    (MonadIO m, Gtk.ActionK a) =>
+    a ->                                    -- action
+    m ContextMenuItem
+contextMenuItemNew action = liftIO $ do
+    let action' = unsafeManagedPtrCastPtr action
+    result <- webkit_context_menu_item_new action'
+    checkUnexpectedReturnNULL "webkit_context_menu_item_new" result
+    result' <- (newObject ContextMenuItem) result
+    touchManagedPtr action
+    return result'
+
+-- method ContextMenuItem::new_from_stock_action
+-- method type : Constructor
+-- Args : [Arg {argName = "action", argType = TInterface "WebKit2WebExtension" "ContextMenuAction", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "action", argType = TInterface "WebKit2WebExtension" "ContextMenuAction", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "ContextMenuItem"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_item_new_from_stock_action" webkit_context_menu_item_new_from_stock_action :: 
+    CUInt ->                                -- action : TInterface "WebKit2WebExtension" "ContextMenuAction"
+    IO (Ptr ContextMenuItem)
+
+
+contextMenuItemNewFromStockAction ::
+    (MonadIO m) =>
+    ContextMenuAction ->                    -- action
+    m ContextMenuItem
+contextMenuItemNewFromStockAction action = liftIO $ do
+    let action' = (fromIntegral . fromEnum) action
+    result <- webkit_context_menu_item_new_from_stock_action action'
+    checkUnexpectedReturnNULL "webkit_context_menu_item_new_from_stock_action" result
+    result' <- (newObject ContextMenuItem) result
+    return result'
+
+-- method ContextMenuItem::new_from_stock_action_with_label
+-- method type : Constructor
+-- Args : [Arg {argName = "action", argType = TInterface "WebKit2WebExtension" "ContextMenuAction", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "label", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "action", argType = TInterface "WebKit2WebExtension" "ContextMenuAction", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "label", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "ContextMenuItem"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_item_new_from_stock_action_with_label" webkit_context_menu_item_new_from_stock_action_with_label :: 
+    CUInt ->                                -- action : TInterface "WebKit2WebExtension" "ContextMenuAction"
+    CString ->                              -- label : TBasicType TUTF8
+    IO (Ptr ContextMenuItem)
+
+
+contextMenuItemNewFromStockActionWithLabel ::
+    (MonadIO m) =>
+    ContextMenuAction ->                    -- action
+    T.Text ->                               -- label
+    m ContextMenuItem
+contextMenuItemNewFromStockActionWithLabel action label = liftIO $ do
+    let action' = (fromIntegral . fromEnum) action
+    label' <- textToCString label
+    result <- webkit_context_menu_item_new_from_stock_action_with_label action' label'
+    checkUnexpectedReturnNULL "webkit_context_menu_item_new_from_stock_action_with_label" result
+    result' <- (newObject ContextMenuItem) result
+    freeMem label'
+    return result'
+
+-- method ContextMenuItem::new_separator
+-- method type : Constructor
+-- Args : []
+-- Lengths : []
+-- hInArgs : []
+-- returnType : TInterface "WebKit2WebExtension" "ContextMenuItem"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_item_new_separator" webkit_context_menu_item_new_separator :: 
+    IO (Ptr ContextMenuItem)
+
+
+contextMenuItemNewSeparator ::
+    (MonadIO m) =>
+    m ContextMenuItem
+contextMenuItemNewSeparator  = liftIO $ do
+    result <- webkit_context_menu_item_new_separator
+    checkUnexpectedReturnNULL "webkit_context_menu_item_new_separator" result
+    result' <- (newObject ContextMenuItem) result
+    return result'
+
+-- method ContextMenuItem::new_with_submenu
+-- method type : Constructor
+-- Args : [Arg {argName = "label", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "submenu", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "label", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "submenu", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "ContextMenuItem"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_item_new_with_submenu" webkit_context_menu_item_new_with_submenu :: 
+    CString ->                              -- label : TBasicType TUTF8
+    Ptr ContextMenu ->                      -- submenu : TInterface "WebKit2WebExtension" "ContextMenu"
+    IO (Ptr ContextMenuItem)
+
+
+contextMenuItemNewWithSubmenu ::
+    (MonadIO m, ContextMenuK a) =>
+    T.Text ->                               -- label
+    a ->                                    -- submenu
+    m ContextMenuItem
+contextMenuItemNewWithSubmenu label submenu = liftIO $ do
+    label' <- textToCString label
+    let submenu' = unsafeManagedPtrCastPtr submenu
+    result <- webkit_context_menu_item_new_with_submenu label' submenu'
+    checkUnexpectedReturnNULL "webkit_context_menu_item_new_with_submenu" result
+    result' <- (newObject ContextMenuItem) result
+    touchManagedPtr submenu
+    freeMem label'
+    return result'
+
+-- method ContextMenuItem::get_stock_action
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "ContextMenuAction"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_item_get_stock_action" webkit_context_menu_item_get_stock_action :: 
+    Ptr ContextMenuItem ->                  -- _obj : TInterface "WebKit2WebExtension" "ContextMenuItem"
+    IO CUInt
+
+
+contextMenuItemGetStockAction ::
+    (MonadIO m, ContextMenuItemK a) =>
+    a ->                                    -- _obj
+    m ContextMenuAction
+contextMenuItemGetStockAction _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_context_menu_item_get_stock_action _obj'
+    let result' = (toEnum . fromIntegral) result
+    touchManagedPtr _obj
+    return result'
+
+-- method ContextMenuItem::is_separator
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_item_is_separator" webkit_context_menu_item_is_separator :: 
+    Ptr ContextMenuItem ->                  -- _obj : TInterface "WebKit2WebExtension" "ContextMenuItem"
+    IO CInt
+
+
+contextMenuItemIsSeparator ::
+    (MonadIO m, ContextMenuItemK a) =>
+    a ->                                    -- _obj
+    m Bool
+contextMenuItemIsSeparator _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_context_menu_item_is_separator _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method ContextMenuItem::set_submenu
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "submenu", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "ContextMenuItem", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "submenu", argType = TInterface "WebKit2WebExtension" "ContextMenu", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_context_menu_item_set_submenu" webkit_context_menu_item_set_submenu :: 
+    Ptr ContextMenuItem ->                  -- _obj : TInterface "WebKit2WebExtension" "ContextMenuItem"
+    Ptr ContextMenu ->                      -- submenu : TInterface "WebKit2WebExtension" "ContextMenu"
+    IO ()
+
+
+contextMenuItemSetSubmenu ::
+    (MonadIO m, ContextMenuItemK a, ContextMenuK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- submenu
+    m ()
+contextMenuItemSetSubmenu _obj submenu = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let submenu' = unsafeManagedPtrCastPtr submenu
+    webkit_context_menu_item_set_submenu _obj' submenu'
+    touchManagedPtr _obj
+    touchManagedPtr submenu
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/ContextMenuItem.hs-boot b/GI/WebKit2WebExtension/Objects/ContextMenuItem.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/ContextMenuItem.hs-boot
@@ -0,0 +1,13 @@
+module GI.WebKit2WebExtension.Objects.ContextMenuItem where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype ContextMenuItem = ContextMenuItem (ForeignPtr ContextMenuItem)
+instance GObject ContextMenuItem where
+class GObject o => ContextMenuItemK o
+instance (GObject o, IsDescendantOf ContextMenuItem o) => ContextMenuItemK o
diff --git a/GI/WebKit2WebExtension/Objects/DOMAttr.hs b/GI/WebKit2WebExtension/Objects/DOMAttr.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMAttr.hs
@@ -0,0 +1,345 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMAttr
+    ( 
+
+-- * Exported types
+    DOMAttr(..)                             ,
+    DOMAttrK                                ,
+    toDOMAttr                               ,
+    noDOMAttr                               ,
+
+
+ -- * Methods
+-- ** dOMAttrGetName
+    dOMAttrGetName                          ,
+
+
+-- ** dOMAttrGetOwnerElement
+    dOMAttrGetOwnerElement                  ,
+
+
+-- ** dOMAttrGetSpecified
+    dOMAttrGetSpecified                     ,
+
+
+-- ** dOMAttrGetValue
+    dOMAttrGetValue                         ,
+
+
+-- ** dOMAttrSetValue
+    dOMAttrSetValue                         ,
+
+
+
+
+ -- * Properties
+-- ** IsId
+    DOMAttrIsIdPropertyInfo                 ,
+    getDOMAttrIsId                          ,
+
+
+-- ** Name
+    DOMAttrNamePropertyInfo                 ,
+    getDOMAttrName                          ,
+
+
+-- ** OwnerElement
+    DOMAttrOwnerElementPropertyInfo         ,
+    getDOMAttrOwnerElement                  ,
+
+
+-- ** Specified
+    DOMAttrSpecifiedPropertyInfo            ,
+    getDOMAttrSpecified                     ,
+
+
+-- ** Value
+    DOMAttrValuePropertyInfo                ,
+    constructDOMAttrValue                   ,
+    getDOMAttrValue                         ,
+    setDOMAttrValue                         ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMAttr = DOMAttr (ForeignPtr DOMAttr)
+foreign import ccall "webkit_dom_attr_get_type"
+    c_webkit_dom_attr_get_type :: IO GType
+
+type instance ParentTypes DOMAttr = DOMAttrParentTypes
+type DOMAttrParentTypes = '[DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMAttr where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_attr_get_type
+    
+
+class GObject o => DOMAttrK o
+instance (GObject o, IsDescendantOf DOMAttr o) => DOMAttrK o
+
+toDOMAttr :: DOMAttrK o => o -> IO DOMAttr
+toDOMAttr = unsafeCastTo DOMAttr
+
+noDOMAttr :: Maybe DOMAttr
+noDOMAttr = Nothing
+
+-- VVV Prop "is-id"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMAttrIsId :: (MonadIO m, DOMAttrK o) => o -> m Bool
+getDOMAttrIsId obj = liftIO $ getObjectPropertyBool obj "is-id"
+
+data DOMAttrIsIdPropertyInfo
+instance AttrInfo DOMAttrIsIdPropertyInfo where
+    type AttrAllowedOps DOMAttrIsIdPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMAttrIsIdPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMAttrIsIdPropertyInfo = DOMAttrK
+    type AttrGetType DOMAttrIsIdPropertyInfo = Bool
+    type AttrLabel DOMAttrIsIdPropertyInfo = "DOMAttr::is-id"
+    attrGet _ = getDOMAttrIsId
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMAttrName :: (MonadIO m, DOMAttrK o) => o -> m T.Text
+getDOMAttrName obj = liftIO $ getObjectPropertyString obj "name"
+
+data DOMAttrNamePropertyInfo
+instance AttrInfo DOMAttrNamePropertyInfo where
+    type AttrAllowedOps DOMAttrNamePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMAttrNamePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMAttrNamePropertyInfo = DOMAttrK
+    type AttrGetType DOMAttrNamePropertyInfo = T.Text
+    type AttrLabel DOMAttrNamePropertyInfo = "DOMAttr::name"
+    attrGet _ = getDOMAttrName
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "owner-element"
+   -- Type: TInterface "WebKit2WebExtension" "DOMElement"
+   -- Flags: [PropertyReadable]
+
+getDOMAttrOwnerElement :: (MonadIO m, DOMAttrK o) => o -> m DOMElement
+getDOMAttrOwnerElement obj = liftIO $ getObjectPropertyObject obj "owner-element" DOMElement
+
+data DOMAttrOwnerElementPropertyInfo
+instance AttrInfo DOMAttrOwnerElementPropertyInfo where
+    type AttrAllowedOps DOMAttrOwnerElementPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMAttrOwnerElementPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMAttrOwnerElementPropertyInfo = DOMAttrK
+    type AttrGetType DOMAttrOwnerElementPropertyInfo = DOMElement
+    type AttrLabel DOMAttrOwnerElementPropertyInfo = "DOMAttr::owner-element"
+    attrGet _ = getDOMAttrOwnerElement
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "specified"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMAttrSpecified :: (MonadIO m, DOMAttrK o) => o -> m Bool
+getDOMAttrSpecified obj = liftIO $ getObjectPropertyBool obj "specified"
+
+data DOMAttrSpecifiedPropertyInfo
+instance AttrInfo DOMAttrSpecifiedPropertyInfo where
+    type AttrAllowedOps DOMAttrSpecifiedPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMAttrSpecifiedPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMAttrSpecifiedPropertyInfo = DOMAttrK
+    type AttrGetType DOMAttrSpecifiedPropertyInfo = Bool
+    type AttrLabel DOMAttrSpecifiedPropertyInfo = "DOMAttr::specified"
+    attrGet _ = getDOMAttrSpecified
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "value"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMAttrValue :: (MonadIO m, DOMAttrK o) => o -> m T.Text
+getDOMAttrValue obj = liftIO $ getObjectPropertyString obj "value"
+
+setDOMAttrValue :: (MonadIO m, DOMAttrK o) => o -> T.Text -> m ()
+setDOMAttrValue obj val = liftIO $ setObjectPropertyString obj "value" val
+
+constructDOMAttrValue :: T.Text -> IO ([Char], GValue)
+constructDOMAttrValue val = constructObjectPropertyString "value" val
+
+data DOMAttrValuePropertyInfo
+instance AttrInfo DOMAttrValuePropertyInfo where
+    type AttrAllowedOps DOMAttrValuePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMAttrValuePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMAttrValuePropertyInfo = DOMAttrK
+    type AttrGetType DOMAttrValuePropertyInfo = T.Text
+    type AttrLabel DOMAttrValuePropertyInfo = "DOMAttr::value"
+    attrGet _ = getDOMAttrValue
+    attrSet _ = setDOMAttrValue
+    attrConstruct _ = constructDOMAttrValue
+
+type instance AttributeList DOMAttr = DOMAttrAttributeList
+type DOMAttrAttributeList = ('[ '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("is-id", DOMAttrIsIdPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("name", DOMAttrNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("owner-element", DOMAttrOwnerElementPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("specified", DOMAttrSpecifiedPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("value", DOMAttrValuePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMAttr = DOMAttrSignalList
+type DOMAttrSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMAttr::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_attr_get_name" webkit_dom_attr_get_name :: 
+    Ptr DOMAttr ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMAttr"
+    IO CString
+
+
+dOMAttrGetName ::
+    (MonadIO m, DOMAttrK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMAttrGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_attr_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_attr_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMAttr::get_owner_element
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_attr_get_owner_element" webkit_dom_attr_get_owner_element :: 
+    Ptr DOMAttr ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMAttr"
+    IO (Ptr DOMElement)
+
+
+dOMAttrGetOwnerElement ::
+    (MonadIO m, DOMAttrK a) =>
+    a ->                                    -- _obj
+    m DOMElement
+dOMAttrGetOwnerElement _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_attr_get_owner_element _obj'
+    checkUnexpectedReturnNULL "webkit_dom_attr_get_owner_element" result
+    result' <- (newObject DOMElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMAttr::get_specified
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_attr_get_specified" webkit_dom_attr_get_specified :: 
+    Ptr DOMAttr ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMAttr"
+    IO CInt
+
+
+dOMAttrGetSpecified ::
+    (MonadIO m, DOMAttrK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMAttrGetSpecified _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_attr_get_specified _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMAttr::get_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_attr_get_value" webkit_dom_attr_get_value :: 
+    Ptr DOMAttr ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMAttr"
+    IO CString
+
+
+dOMAttrGetValue ::
+    (MonadIO m, DOMAttrK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMAttrGetValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_attr_get_value _obj'
+    checkUnexpectedReturnNULL "webkit_dom_attr_get_value" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMAttr::set_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_attr_set_value" webkit_dom_attr_set_value :: 
+    Ptr DOMAttr ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMAttr"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMAttrSetValue ::
+    (MonadIO m, DOMAttrK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMAttrSetValue _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_attr_set_value _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMAttr.hs-boot b/GI/WebKit2WebExtension/Objects/DOMAttr.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMAttr.hs-boot
@@ -0,0 +1,18 @@
+module GI.WebKit2WebExtension.Objects.DOMAttr where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMAttr = DOMAttr (ForeignPtr DOMAttr)
+instance GObject DOMAttr where
+class GObject o => DOMAttrK o
+instance (GObject o, IsDescendantOf DOMAttr o) => DOMAttrK o
+data DOMAttrIsIdPropertyInfo
+data DOMAttrNamePropertyInfo
+data DOMAttrOwnerElementPropertyInfo
+data DOMAttrSpecifiedPropertyInfo
+data DOMAttrValuePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMBlob.hs b/GI/WebKit2WebExtension/Objects/DOMBlob.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMBlob.hs
@@ -0,0 +1,138 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMBlob
+    ( 
+
+-- * Exported types
+    DOMBlob(..)                             ,
+    DOMBlobK                                ,
+    toDOMBlob                               ,
+    noDOMBlob                               ,
+
+
+ -- * Methods
+-- ** dOMBlobGetSize
+    dOMBlobGetSize                          ,
+
+
+
+
+ -- * Properties
+-- ** Size
+    DOMBlobSizePropertyInfo                 ,
+    getDOMBlobSize                          ,
+
+
+-- ** Type
+    DOMBlobTypePropertyInfo                 ,
+    getDOMBlobType                          ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMBlob = DOMBlob (ForeignPtr DOMBlob)
+foreign import ccall "webkit_dom_blob_get_type"
+    c_webkit_dom_blob_get_type :: IO GType
+
+type instance ParentTypes DOMBlob = DOMBlobParentTypes
+type DOMBlobParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMBlob where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_blob_get_type
+    
+
+class GObject o => DOMBlobK o
+instance (GObject o, IsDescendantOf DOMBlob o) => DOMBlobK o
+
+toDOMBlob :: DOMBlobK o => o -> IO DOMBlob
+toDOMBlob = unsafeCastTo DOMBlob
+
+noDOMBlob :: Maybe DOMBlob
+noDOMBlob = Nothing
+
+-- VVV Prop "size"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMBlobSize :: (MonadIO m, DOMBlobK o) => o -> m Word64
+getDOMBlobSize obj = liftIO $ getObjectPropertyUInt64 obj "size"
+
+data DOMBlobSizePropertyInfo
+instance AttrInfo DOMBlobSizePropertyInfo where
+    type AttrAllowedOps DOMBlobSizePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMBlobSizePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMBlobSizePropertyInfo = DOMBlobK
+    type AttrGetType DOMBlobSizePropertyInfo = Word64
+    type AttrLabel DOMBlobSizePropertyInfo = "DOMBlob::size"
+    attrGet _ = getDOMBlobSize
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMBlobType :: (MonadIO m, DOMBlobK o) => o -> m T.Text
+getDOMBlobType obj = liftIO $ getObjectPropertyString obj "type"
+
+data DOMBlobTypePropertyInfo
+instance AttrInfo DOMBlobTypePropertyInfo where
+    type AttrAllowedOps DOMBlobTypePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMBlobTypePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMBlobTypePropertyInfo = DOMBlobK
+    type AttrGetType DOMBlobTypePropertyInfo = T.Text
+    type AttrLabel DOMBlobTypePropertyInfo = "DOMBlob::type"
+    attrGet _ = getDOMBlobType
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMBlob = DOMBlobAttributeList
+type DOMBlobAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("size", DOMBlobSizePropertyInfo), '("type", DOMBlobTypePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMBlob = DOMBlobSignalList
+type DOMBlobSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMBlob::get_size
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMBlob", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMBlob", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_blob_get_size" webkit_dom_blob_get_size :: 
+    Ptr DOMBlob ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMBlob"
+    IO Word64
+
+
+dOMBlobGetSize ::
+    (MonadIO m, DOMBlobK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMBlobGetSize _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_blob_get_size _obj'
+    touchManagedPtr _obj
+    return result
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMBlob.hs-boot b/GI/WebKit2WebExtension/Objects/DOMBlob.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMBlob.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMBlob where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMBlob = DOMBlob (ForeignPtr DOMBlob)
+instance GObject DOMBlob where
+class GObject o => DOMBlobK o
+instance (GObject o, IsDescendantOf DOMBlob o) => DOMBlobK o
+data DOMBlobSizePropertyInfo
+data DOMBlobTypePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMCDATASection.hs b/GI/WebKit2WebExtension/Objects/DOMCDATASection.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMCDATASection.hs
@@ -0,0 +1,58 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMCDATASection
+    ( 
+
+-- * Exported types
+    DOMCDATASection(..)                     ,
+    DOMCDATASectionK                        ,
+    toDOMCDATASection                       ,
+    noDOMCDATASection                       ,
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMCDATASection = DOMCDATASection (ForeignPtr DOMCDATASection)
+foreign import ccall "webkit_dom_cdata_section_get_type"
+    c_webkit_dom_cdata_section_get_type :: IO GType
+
+type instance ParentTypes DOMCDATASection = DOMCDATASectionParentTypes
+type DOMCDATASectionParentTypes = '[DOMText, DOMCharacterData, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMCDATASection where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_cdata_section_get_type
+    
+
+class GObject o => DOMCDATASectionK o
+instance (GObject o, IsDescendantOf DOMCDATASection o) => DOMCDATASectionK o
+
+toDOMCDATASection :: DOMCDATASectionK o => o -> IO DOMCDATASection
+toDOMCDATASection = unsafeCastTo DOMCDATASection
+
+noDOMCDATASection :: Maybe DOMCDATASection
+noDOMCDATASection = Nothing
+
+type instance AttributeList DOMCDATASection = DOMCDATASectionAttributeList
+type DOMCDATASectionAttributeList = ('[ '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("data", DOMCharacterDataDataPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("length", DOMCharacterDataLengthPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("whole-text", DOMTextWholeTextPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMCDATASection = DOMCDATASectionSignalList
+type DOMCDATASectionSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMCDATASection.hs-boot b/GI/WebKit2WebExtension/Objects/DOMCDATASection.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMCDATASection.hs-boot
@@ -0,0 +1,13 @@
+module GI.WebKit2WebExtension.Objects.DOMCDATASection where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMCDATASection = DOMCDATASection (ForeignPtr DOMCDATASection)
+instance GObject DOMCDATASection where
+class GObject o => DOMCDATASectionK o
+instance (GObject o, IsDescendantOf DOMCDATASection o) => DOMCDATASectionK o
diff --git a/GI/WebKit2WebExtension/Objects/DOMCSSRule.hs b/GI/WebKit2WebExtension/Objects/DOMCSSRule.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMCSSRule.hs
@@ -0,0 +1,320 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMCSSRule
+    ( 
+
+-- * Exported types
+    DOMCSSRule(..)                          ,
+    DOMCSSRuleK                             ,
+    toDOMCSSRule                            ,
+    noDOMCSSRule                            ,
+
+
+ -- * Methods
+-- ** dOMCSSRuleGetCssText
+    dOMCSSRuleGetCssText                    ,
+
+
+-- ** dOMCSSRuleGetParentRule
+    dOMCSSRuleGetParentRule                 ,
+
+
+-- ** dOMCSSRuleGetParentStyleSheet
+    dOMCSSRuleGetParentStyleSheet           ,
+
+
+-- ** dOMCSSRuleGetRuleType
+    dOMCSSRuleGetRuleType                   ,
+
+
+-- ** dOMCSSRuleSetCssText
+    dOMCSSRuleSetCssText                    ,
+
+
+
+
+ -- * Properties
+-- ** CssText
+    DOMCSSRuleCssTextPropertyInfo           ,
+    constructDOMCSSRuleCssText              ,
+    getDOMCSSRuleCssText                    ,
+    setDOMCSSRuleCssText                    ,
+
+
+-- ** ParentRule
+    DOMCSSRuleParentRulePropertyInfo        ,
+    getDOMCSSRuleParentRule                 ,
+
+
+-- ** ParentStyleSheet
+    DOMCSSRuleParentStyleSheetPropertyInfo  ,
+    getDOMCSSRuleParentStyleSheet           ,
+
+
+-- ** Type
+    DOMCSSRuleTypePropertyInfo              ,
+    getDOMCSSRuleType                       ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMCSSRule = DOMCSSRule (ForeignPtr DOMCSSRule)
+foreign import ccall "webkit_dom_css_rule_get_type"
+    c_webkit_dom_css_rule_get_type :: IO GType
+
+type instance ParentTypes DOMCSSRule = DOMCSSRuleParentTypes
+type DOMCSSRuleParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMCSSRule where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_css_rule_get_type
+    
+
+class GObject o => DOMCSSRuleK o
+instance (GObject o, IsDescendantOf DOMCSSRule o) => DOMCSSRuleK o
+
+toDOMCSSRule :: DOMCSSRuleK o => o -> IO DOMCSSRule
+toDOMCSSRule = unsafeCastTo DOMCSSRule
+
+noDOMCSSRule :: Maybe DOMCSSRule
+noDOMCSSRule = Nothing
+
+-- VVV Prop "css-text"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMCSSRuleCssText :: (MonadIO m, DOMCSSRuleK o) => o -> m T.Text
+getDOMCSSRuleCssText obj = liftIO $ getObjectPropertyString obj "css-text"
+
+setDOMCSSRuleCssText :: (MonadIO m, DOMCSSRuleK o) => o -> T.Text -> m ()
+setDOMCSSRuleCssText obj val = liftIO $ setObjectPropertyString obj "css-text" val
+
+constructDOMCSSRuleCssText :: T.Text -> IO ([Char], GValue)
+constructDOMCSSRuleCssText val = constructObjectPropertyString "css-text" val
+
+data DOMCSSRuleCssTextPropertyInfo
+instance AttrInfo DOMCSSRuleCssTextPropertyInfo where
+    type AttrAllowedOps DOMCSSRuleCssTextPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMCSSRuleCssTextPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMCSSRuleCssTextPropertyInfo = DOMCSSRuleK
+    type AttrGetType DOMCSSRuleCssTextPropertyInfo = T.Text
+    type AttrLabel DOMCSSRuleCssTextPropertyInfo = "DOMCSSRule::css-text"
+    attrGet _ = getDOMCSSRuleCssText
+    attrSet _ = setDOMCSSRuleCssText
+    attrConstruct _ = constructDOMCSSRuleCssText
+
+-- VVV Prop "parent-rule"
+   -- Type: TInterface "WebKit2WebExtension" "DOMCSSRule"
+   -- Flags: [PropertyReadable]
+
+getDOMCSSRuleParentRule :: (MonadIO m, DOMCSSRuleK o) => o -> m DOMCSSRule
+getDOMCSSRuleParentRule obj = liftIO $ getObjectPropertyObject obj "parent-rule" DOMCSSRule
+
+data DOMCSSRuleParentRulePropertyInfo
+instance AttrInfo DOMCSSRuleParentRulePropertyInfo where
+    type AttrAllowedOps DOMCSSRuleParentRulePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMCSSRuleParentRulePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMCSSRuleParentRulePropertyInfo = DOMCSSRuleK
+    type AttrGetType DOMCSSRuleParentRulePropertyInfo = DOMCSSRule
+    type AttrLabel DOMCSSRuleParentRulePropertyInfo = "DOMCSSRule::parent-rule"
+    attrGet _ = getDOMCSSRuleParentRule
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "parent-style-sheet"
+   -- Type: TInterface "WebKit2WebExtension" "DOMCSSStyleSheet"
+   -- Flags: [PropertyReadable]
+
+getDOMCSSRuleParentStyleSheet :: (MonadIO m, DOMCSSRuleK o) => o -> m DOMCSSStyleSheet
+getDOMCSSRuleParentStyleSheet obj = liftIO $ getObjectPropertyObject obj "parent-style-sheet" DOMCSSStyleSheet
+
+data DOMCSSRuleParentStyleSheetPropertyInfo
+instance AttrInfo DOMCSSRuleParentStyleSheetPropertyInfo where
+    type AttrAllowedOps DOMCSSRuleParentStyleSheetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMCSSRuleParentStyleSheetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMCSSRuleParentStyleSheetPropertyInfo = DOMCSSRuleK
+    type AttrGetType DOMCSSRuleParentStyleSheetPropertyInfo = DOMCSSStyleSheet
+    type AttrLabel DOMCSSRuleParentStyleSheetPropertyInfo = "DOMCSSRule::parent-style-sheet"
+    attrGet _ = getDOMCSSRuleParentStyleSheet
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUInt32
+   -- Flags: [PropertyReadable]
+
+getDOMCSSRuleType :: (MonadIO m, DOMCSSRuleK o) => o -> m Word32
+getDOMCSSRuleType obj = liftIO $ getObjectPropertyCUInt obj "type"
+
+data DOMCSSRuleTypePropertyInfo
+instance AttrInfo DOMCSSRuleTypePropertyInfo where
+    type AttrAllowedOps DOMCSSRuleTypePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMCSSRuleTypePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMCSSRuleTypePropertyInfo = DOMCSSRuleK
+    type AttrGetType DOMCSSRuleTypePropertyInfo = Word32
+    type AttrLabel DOMCSSRuleTypePropertyInfo = "DOMCSSRule::type"
+    attrGet _ = getDOMCSSRuleType
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMCSSRule = DOMCSSRuleAttributeList
+type DOMCSSRuleAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("css-text", DOMCSSRuleCssTextPropertyInfo), '("parent-rule", DOMCSSRuleParentRulePropertyInfo), '("parent-style-sheet", DOMCSSRuleParentStyleSheetPropertyInfo), '("type", DOMCSSRuleTypePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMCSSRule = DOMCSSRuleSignalList
+type DOMCSSRuleSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMCSSRule::get_css_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSRule", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSRule", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_rule_get_css_text" webkit_dom_css_rule_get_css_text :: 
+    Ptr DOMCSSRule ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMCSSRule"
+    IO CString
+
+
+dOMCSSRuleGetCssText ::
+    (MonadIO m, DOMCSSRuleK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMCSSRuleGetCssText _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_css_rule_get_css_text _obj'
+    checkUnexpectedReturnNULL "webkit_dom_css_rule_get_css_text" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMCSSRule::get_parent_rule
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSRule", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSRule", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMCSSRule"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_rule_get_parent_rule" webkit_dom_css_rule_get_parent_rule :: 
+    Ptr DOMCSSRule ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMCSSRule"
+    IO (Ptr DOMCSSRule)
+
+
+dOMCSSRuleGetParentRule ::
+    (MonadIO m, DOMCSSRuleK a) =>
+    a ->                                    -- _obj
+    m DOMCSSRule
+dOMCSSRuleGetParentRule _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_css_rule_get_parent_rule _obj'
+    checkUnexpectedReturnNULL "webkit_dom_css_rule_get_parent_rule" result
+    result' <- (wrapObject DOMCSSRule) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMCSSRule::get_parent_style_sheet
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSRule", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSRule", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMCSSStyleSheet"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_rule_get_parent_style_sheet" webkit_dom_css_rule_get_parent_style_sheet :: 
+    Ptr DOMCSSRule ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMCSSRule"
+    IO (Ptr DOMCSSStyleSheet)
+
+
+dOMCSSRuleGetParentStyleSheet ::
+    (MonadIO m, DOMCSSRuleK a) =>
+    a ->                                    -- _obj
+    m DOMCSSStyleSheet
+dOMCSSRuleGetParentStyleSheet _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_css_rule_get_parent_style_sheet _obj'
+    checkUnexpectedReturnNULL "webkit_dom_css_rule_get_parent_style_sheet" result
+    result' <- (wrapObject DOMCSSStyleSheet) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMCSSRule::get_rule_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSRule", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSRule", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt16
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_rule_get_rule_type" webkit_dom_css_rule_get_rule_type :: 
+    Ptr DOMCSSRule ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMCSSRule"
+    IO Word16
+
+
+dOMCSSRuleGetRuleType ::
+    (MonadIO m, DOMCSSRuleK a) =>
+    a ->                                    -- _obj
+    m Word16
+dOMCSSRuleGetRuleType _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_css_rule_get_rule_type _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMCSSRule::set_css_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSRule", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSRule", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_rule_set_css_text" webkit_dom_css_rule_set_css_text :: 
+    Ptr DOMCSSRule ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMCSSRule"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMCSSRuleSetCssText ::
+    (MonadIO m, DOMCSSRuleK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMCSSRuleSetCssText _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_css_rule_set_css_text _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMCSSRule.hs-boot b/GI/WebKit2WebExtension/Objects/DOMCSSRule.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMCSSRule.hs-boot
@@ -0,0 +1,17 @@
+module GI.WebKit2WebExtension.Objects.DOMCSSRule where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMCSSRule = DOMCSSRule (ForeignPtr DOMCSSRule)
+instance GObject DOMCSSRule where
+class GObject o => DOMCSSRuleK o
+instance (GObject o, IsDescendantOf DOMCSSRule o) => DOMCSSRuleK o
+data DOMCSSRuleCssTextPropertyInfo
+data DOMCSSRuleParentRulePropertyInfo
+data DOMCSSRuleParentStyleSheetPropertyInfo
+data DOMCSSRuleTypePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMCSSRuleList.hs b/GI/WebKit2WebExtension/Objects/DOMCSSRuleList.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMCSSRuleList.hs
@@ -0,0 +1,147 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMCSSRuleList
+    ( 
+
+-- * Exported types
+    DOMCSSRuleList(..)                      ,
+    DOMCSSRuleListK                         ,
+    toDOMCSSRuleList                        ,
+    noDOMCSSRuleList                        ,
+
+
+ -- * Methods
+-- ** dOMCSSRuleListGetLength
+    dOMCSSRuleListGetLength                 ,
+
+
+-- ** dOMCSSRuleListItem
+    dOMCSSRuleListItem                      ,
+
+
+
+
+ -- * Properties
+-- ** Length
+    DOMCSSRuleListLengthPropertyInfo        ,
+    getDOMCSSRuleListLength                 ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMCSSRuleList = DOMCSSRuleList (ForeignPtr DOMCSSRuleList)
+foreign import ccall "webkit_dom_css_rule_list_get_type"
+    c_webkit_dom_css_rule_list_get_type :: IO GType
+
+type instance ParentTypes DOMCSSRuleList = DOMCSSRuleListParentTypes
+type DOMCSSRuleListParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMCSSRuleList where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_css_rule_list_get_type
+    
+
+class GObject o => DOMCSSRuleListK o
+instance (GObject o, IsDescendantOf DOMCSSRuleList o) => DOMCSSRuleListK o
+
+toDOMCSSRuleList :: DOMCSSRuleListK o => o -> IO DOMCSSRuleList
+toDOMCSSRuleList = unsafeCastTo DOMCSSRuleList
+
+noDOMCSSRuleList :: Maybe DOMCSSRuleList
+noDOMCSSRuleList = Nothing
+
+-- VVV Prop "length"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMCSSRuleListLength :: (MonadIO m, DOMCSSRuleListK o) => o -> m Word64
+getDOMCSSRuleListLength obj = liftIO $ getObjectPropertyUInt64 obj "length"
+
+data DOMCSSRuleListLengthPropertyInfo
+instance AttrInfo DOMCSSRuleListLengthPropertyInfo where
+    type AttrAllowedOps DOMCSSRuleListLengthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMCSSRuleListLengthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMCSSRuleListLengthPropertyInfo = DOMCSSRuleListK
+    type AttrGetType DOMCSSRuleListLengthPropertyInfo = Word64
+    type AttrLabel DOMCSSRuleListLengthPropertyInfo = "DOMCSSRuleList::length"
+    attrGet _ = getDOMCSSRuleListLength
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMCSSRuleList = DOMCSSRuleListAttributeList
+type DOMCSSRuleListAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("length", DOMCSSRuleListLengthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMCSSRuleList = DOMCSSRuleListSignalList
+type DOMCSSRuleListSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMCSSRuleList::get_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSRuleList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSRuleList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_rule_list_get_length" webkit_dom_css_rule_list_get_length :: 
+    Ptr DOMCSSRuleList ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMCSSRuleList"
+    IO Word64
+
+
+dOMCSSRuleListGetLength ::
+    (MonadIO m, DOMCSSRuleListK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMCSSRuleListGetLength _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_css_rule_list_get_length _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMCSSRuleList::item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSRuleList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSRuleList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMCSSRule"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_rule_list_item" webkit_dom_css_rule_list_item :: 
+    Ptr DOMCSSRuleList ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMCSSRuleList"
+    Word64 ->                               -- index : TBasicType TUInt64
+    IO (Ptr DOMCSSRule)
+
+
+dOMCSSRuleListItem ::
+    (MonadIO m, DOMCSSRuleListK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- index
+    m DOMCSSRule
+dOMCSSRuleListItem _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_css_rule_list_item _obj' index
+    checkUnexpectedReturnNULL "webkit_dom_css_rule_list_item" result
+    result' <- (wrapObject DOMCSSRule) result
+    touchManagedPtr _obj
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMCSSRuleList.hs-boot b/GI/WebKit2WebExtension/Objects/DOMCSSRuleList.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMCSSRuleList.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMCSSRuleList where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMCSSRuleList = DOMCSSRuleList (ForeignPtr DOMCSSRuleList)
+instance GObject DOMCSSRuleList where
+class GObject o => DOMCSSRuleListK o
+instance (GObject o, IsDescendantOf DOMCSSRuleList o) => DOMCSSRuleListK o
+data DOMCSSRuleListLengthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMCSSStyleDeclaration.hs b/GI/WebKit2WebExtension/Objects/DOMCSSStyleDeclaration.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMCSSStyleDeclaration.hs
@@ -0,0 +1,525 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMCSSStyleDeclaration
+    ( 
+
+-- * Exported types
+    DOMCSSStyleDeclaration(..)              ,
+    DOMCSSStyleDeclarationK                 ,
+    toDOMCSSStyleDeclaration                ,
+    noDOMCSSStyleDeclaration                ,
+
+
+ -- * Methods
+-- ** dOMCSSStyleDeclarationGetCssText
+    dOMCSSStyleDeclarationGetCssText        ,
+
+
+-- ** dOMCSSStyleDeclarationGetLength
+    dOMCSSStyleDeclarationGetLength         ,
+
+
+-- ** dOMCSSStyleDeclarationGetParentRule
+    dOMCSSStyleDeclarationGetParentRule     ,
+
+
+-- ** dOMCSSStyleDeclarationGetPropertyPriority
+    dOMCSSStyleDeclarationGetPropertyPriority,
+
+
+-- ** dOMCSSStyleDeclarationGetPropertyShorthand
+    dOMCSSStyleDeclarationGetPropertyShorthand,
+
+
+-- ** dOMCSSStyleDeclarationGetPropertyValue
+    dOMCSSStyleDeclarationGetPropertyValue  ,
+
+
+-- ** dOMCSSStyleDeclarationIsPropertyImplicit
+    dOMCSSStyleDeclarationIsPropertyImplicit,
+
+
+-- ** dOMCSSStyleDeclarationItem
+    dOMCSSStyleDeclarationItem              ,
+
+
+-- ** dOMCSSStyleDeclarationRemoveProperty
+    dOMCSSStyleDeclarationRemoveProperty    ,
+
+
+-- ** dOMCSSStyleDeclarationSetCssText
+    dOMCSSStyleDeclarationSetCssText        ,
+
+
+-- ** dOMCSSStyleDeclarationSetProperty
+    dOMCSSStyleDeclarationSetProperty       ,
+
+
+
+
+ -- * Properties
+-- ** CssText
+    DOMCSSStyleDeclarationCssTextPropertyInfo,
+    constructDOMCSSStyleDeclarationCssText  ,
+    getDOMCSSStyleDeclarationCssText        ,
+    setDOMCSSStyleDeclarationCssText        ,
+
+
+-- ** Length
+    DOMCSSStyleDeclarationLengthPropertyInfo,
+    getDOMCSSStyleDeclarationLength         ,
+
+
+-- ** ParentRule
+    DOMCSSStyleDeclarationParentRulePropertyInfo,
+    getDOMCSSStyleDeclarationParentRule     ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMCSSStyleDeclaration = DOMCSSStyleDeclaration (ForeignPtr DOMCSSStyleDeclaration)
+foreign import ccall "webkit_dom_css_style_declaration_get_type"
+    c_webkit_dom_css_style_declaration_get_type :: IO GType
+
+type instance ParentTypes DOMCSSStyleDeclaration = DOMCSSStyleDeclarationParentTypes
+type DOMCSSStyleDeclarationParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMCSSStyleDeclaration where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_css_style_declaration_get_type
+    
+
+class GObject o => DOMCSSStyleDeclarationK o
+instance (GObject o, IsDescendantOf DOMCSSStyleDeclaration o) => DOMCSSStyleDeclarationK o
+
+toDOMCSSStyleDeclaration :: DOMCSSStyleDeclarationK o => o -> IO DOMCSSStyleDeclaration
+toDOMCSSStyleDeclaration = unsafeCastTo DOMCSSStyleDeclaration
+
+noDOMCSSStyleDeclaration :: Maybe DOMCSSStyleDeclaration
+noDOMCSSStyleDeclaration = Nothing
+
+-- VVV Prop "css-text"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMCSSStyleDeclarationCssText :: (MonadIO m, DOMCSSStyleDeclarationK o) => o -> m T.Text
+getDOMCSSStyleDeclarationCssText obj = liftIO $ getObjectPropertyString obj "css-text"
+
+setDOMCSSStyleDeclarationCssText :: (MonadIO m, DOMCSSStyleDeclarationK o) => o -> T.Text -> m ()
+setDOMCSSStyleDeclarationCssText obj val = liftIO $ setObjectPropertyString obj "css-text" val
+
+constructDOMCSSStyleDeclarationCssText :: T.Text -> IO ([Char], GValue)
+constructDOMCSSStyleDeclarationCssText val = constructObjectPropertyString "css-text" val
+
+data DOMCSSStyleDeclarationCssTextPropertyInfo
+instance AttrInfo DOMCSSStyleDeclarationCssTextPropertyInfo where
+    type AttrAllowedOps DOMCSSStyleDeclarationCssTextPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMCSSStyleDeclarationCssTextPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMCSSStyleDeclarationCssTextPropertyInfo = DOMCSSStyleDeclarationK
+    type AttrGetType DOMCSSStyleDeclarationCssTextPropertyInfo = T.Text
+    type AttrLabel DOMCSSStyleDeclarationCssTextPropertyInfo = "DOMCSSStyleDeclaration::css-text"
+    attrGet _ = getDOMCSSStyleDeclarationCssText
+    attrSet _ = setDOMCSSStyleDeclarationCssText
+    attrConstruct _ = constructDOMCSSStyleDeclarationCssText
+
+-- VVV Prop "length"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMCSSStyleDeclarationLength :: (MonadIO m, DOMCSSStyleDeclarationK o) => o -> m Word64
+getDOMCSSStyleDeclarationLength obj = liftIO $ getObjectPropertyUInt64 obj "length"
+
+data DOMCSSStyleDeclarationLengthPropertyInfo
+instance AttrInfo DOMCSSStyleDeclarationLengthPropertyInfo where
+    type AttrAllowedOps DOMCSSStyleDeclarationLengthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMCSSStyleDeclarationLengthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMCSSStyleDeclarationLengthPropertyInfo = DOMCSSStyleDeclarationK
+    type AttrGetType DOMCSSStyleDeclarationLengthPropertyInfo = Word64
+    type AttrLabel DOMCSSStyleDeclarationLengthPropertyInfo = "DOMCSSStyleDeclaration::length"
+    attrGet _ = getDOMCSSStyleDeclarationLength
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "parent-rule"
+   -- Type: TInterface "WebKit2WebExtension" "DOMCSSRule"
+   -- Flags: [PropertyReadable]
+
+getDOMCSSStyleDeclarationParentRule :: (MonadIO m, DOMCSSStyleDeclarationK o) => o -> m DOMCSSRule
+getDOMCSSStyleDeclarationParentRule obj = liftIO $ getObjectPropertyObject obj "parent-rule" DOMCSSRule
+
+data DOMCSSStyleDeclarationParentRulePropertyInfo
+instance AttrInfo DOMCSSStyleDeclarationParentRulePropertyInfo where
+    type AttrAllowedOps DOMCSSStyleDeclarationParentRulePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMCSSStyleDeclarationParentRulePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMCSSStyleDeclarationParentRulePropertyInfo = DOMCSSStyleDeclarationK
+    type AttrGetType DOMCSSStyleDeclarationParentRulePropertyInfo = DOMCSSRule
+    type AttrLabel DOMCSSStyleDeclarationParentRulePropertyInfo = "DOMCSSStyleDeclaration::parent-rule"
+    attrGet _ = getDOMCSSStyleDeclarationParentRule
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMCSSStyleDeclaration = DOMCSSStyleDeclarationAttributeList
+type DOMCSSStyleDeclarationAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("css-text", DOMCSSStyleDeclarationCssTextPropertyInfo), '("length", DOMCSSStyleDeclarationLengthPropertyInfo), '("parent-rule", DOMCSSStyleDeclarationParentRulePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMCSSStyleDeclaration = DOMCSSStyleDeclarationSignalList
+type DOMCSSStyleDeclarationSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMCSSStyleDeclaration::get_css_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_declaration_get_css_text" webkit_dom_css_style_declaration_get_css_text :: 
+    Ptr DOMCSSStyleDeclaration ->           -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration"
+    IO CString
+
+
+dOMCSSStyleDeclarationGetCssText ::
+    (MonadIO m, DOMCSSStyleDeclarationK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMCSSStyleDeclarationGetCssText _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_css_style_declaration_get_css_text _obj'
+    checkUnexpectedReturnNULL "webkit_dom_css_style_declaration_get_css_text" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMCSSStyleDeclaration::get_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_declaration_get_length" webkit_dom_css_style_declaration_get_length :: 
+    Ptr DOMCSSStyleDeclaration ->           -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration"
+    IO Word64
+
+
+dOMCSSStyleDeclarationGetLength ::
+    (MonadIO m, DOMCSSStyleDeclarationK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMCSSStyleDeclarationGetLength _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_css_style_declaration_get_length _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMCSSStyleDeclaration::get_parent_rule
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMCSSRule"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_declaration_get_parent_rule" webkit_dom_css_style_declaration_get_parent_rule :: 
+    Ptr DOMCSSStyleDeclaration ->           -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration"
+    IO (Ptr DOMCSSRule)
+
+
+dOMCSSStyleDeclarationGetParentRule ::
+    (MonadIO m, DOMCSSStyleDeclarationK a) =>
+    a ->                                    -- _obj
+    m DOMCSSRule
+dOMCSSStyleDeclarationGetParentRule _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_css_style_declaration_get_parent_rule _obj'
+    checkUnexpectedReturnNULL "webkit_dom_css_style_declaration_get_parent_rule" result
+    result' <- (wrapObject DOMCSSRule) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMCSSStyleDeclaration::get_property_priority
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "propertyName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "propertyName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_declaration_get_property_priority" webkit_dom_css_style_declaration_get_property_priority :: 
+    Ptr DOMCSSStyleDeclaration ->           -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration"
+    CString ->                              -- propertyName : TBasicType TUTF8
+    IO CString
+
+
+dOMCSSStyleDeclarationGetPropertyPriority ::
+    (MonadIO m, DOMCSSStyleDeclarationK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- propertyName
+    m T.Text
+dOMCSSStyleDeclarationGetPropertyPriority _obj propertyName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    propertyName' <- textToCString propertyName
+    result <- webkit_dom_css_style_declaration_get_property_priority _obj' propertyName'
+    checkUnexpectedReturnNULL "webkit_dom_css_style_declaration_get_property_priority" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    freeMem propertyName'
+    return result'
+
+-- method DOMCSSStyleDeclaration::get_property_shorthand
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "propertyName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "propertyName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_declaration_get_property_shorthand" webkit_dom_css_style_declaration_get_property_shorthand :: 
+    Ptr DOMCSSStyleDeclaration ->           -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration"
+    CString ->                              -- propertyName : TBasicType TUTF8
+    IO CString
+
+
+dOMCSSStyleDeclarationGetPropertyShorthand ::
+    (MonadIO m, DOMCSSStyleDeclarationK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- propertyName
+    m T.Text
+dOMCSSStyleDeclarationGetPropertyShorthand _obj propertyName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    propertyName' <- textToCString propertyName
+    result <- webkit_dom_css_style_declaration_get_property_shorthand _obj' propertyName'
+    checkUnexpectedReturnNULL "webkit_dom_css_style_declaration_get_property_shorthand" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    freeMem propertyName'
+    return result'
+
+-- method DOMCSSStyleDeclaration::get_property_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "propertyName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "propertyName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_declaration_get_property_value" webkit_dom_css_style_declaration_get_property_value :: 
+    Ptr DOMCSSStyleDeclaration ->           -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration"
+    CString ->                              -- propertyName : TBasicType TUTF8
+    IO CString
+
+
+dOMCSSStyleDeclarationGetPropertyValue ::
+    (MonadIO m, DOMCSSStyleDeclarationK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- propertyName
+    m T.Text
+dOMCSSStyleDeclarationGetPropertyValue _obj propertyName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    propertyName' <- textToCString propertyName
+    result <- webkit_dom_css_style_declaration_get_property_value _obj' propertyName'
+    checkUnexpectedReturnNULL "webkit_dom_css_style_declaration_get_property_value" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    freeMem propertyName'
+    return result'
+
+-- method DOMCSSStyleDeclaration::is_property_implicit
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "propertyName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "propertyName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_declaration_is_property_implicit" webkit_dom_css_style_declaration_is_property_implicit :: 
+    Ptr DOMCSSStyleDeclaration ->           -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration"
+    CString ->                              -- propertyName : TBasicType TUTF8
+    IO CInt
+
+
+dOMCSSStyleDeclarationIsPropertyImplicit ::
+    (MonadIO m, DOMCSSStyleDeclarationK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- propertyName
+    m Bool
+dOMCSSStyleDeclarationIsPropertyImplicit _obj propertyName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    propertyName' <- textToCString propertyName
+    result <- webkit_dom_css_style_declaration_is_property_implicit _obj' propertyName'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    freeMem propertyName'
+    return result'
+
+-- method DOMCSSStyleDeclaration::item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_declaration_item" webkit_dom_css_style_declaration_item :: 
+    Ptr DOMCSSStyleDeclaration ->           -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration"
+    Word64 ->                               -- index : TBasicType TUInt64
+    IO CString
+
+
+dOMCSSStyleDeclarationItem ::
+    (MonadIO m, DOMCSSStyleDeclarationK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- index
+    m T.Text
+dOMCSSStyleDeclarationItem _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_css_style_declaration_item _obj' index
+    checkUnexpectedReturnNULL "webkit_dom_css_style_declaration_item" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMCSSStyleDeclaration::remove_property
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "propertyName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "propertyName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_declaration_remove_property" webkit_dom_css_style_declaration_remove_property :: 
+    Ptr DOMCSSStyleDeclaration ->           -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration"
+    CString ->                              -- propertyName : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO CString
+
+
+dOMCSSStyleDeclarationRemoveProperty ::
+    (MonadIO m, DOMCSSStyleDeclarationK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- propertyName
+    m T.Text
+dOMCSSStyleDeclarationRemoveProperty _obj propertyName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    propertyName' <- textToCString propertyName
+    onException (do
+        result <- propagateGError $ webkit_dom_css_style_declaration_remove_property _obj' propertyName'
+        checkUnexpectedReturnNULL "webkit_dom_css_style_declaration_remove_property" result
+        result' <- cstringToText result
+        freeMem result
+        touchManagedPtr _obj
+        freeMem propertyName'
+        return result'
+     ) (do
+        freeMem propertyName'
+     )
+
+-- method DOMCSSStyleDeclaration::set_css_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_declaration_set_css_text" webkit_dom_css_style_declaration_set_css_text :: 
+    Ptr DOMCSSStyleDeclaration ->           -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMCSSStyleDeclarationSetCssText ::
+    (MonadIO m, DOMCSSStyleDeclarationK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMCSSStyleDeclarationSetCssText _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_css_style_declaration_set_css_text _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+-- method DOMCSSStyleDeclaration::set_property
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "propertyName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "priority", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "propertyName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "priority", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_declaration_set_property" webkit_dom_css_style_declaration_set_property :: 
+    Ptr DOMCSSStyleDeclaration ->           -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration"
+    CString ->                              -- propertyName : TBasicType TUTF8
+    CString ->                              -- value : TBasicType TUTF8
+    CString ->                              -- priority : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMCSSStyleDeclarationSetProperty ::
+    (MonadIO m, DOMCSSStyleDeclarationK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- propertyName
+    T.Text ->                               -- value
+    T.Text ->                               -- priority
+    m ()
+dOMCSSStyleDeclarationSetProperty _obj propertyName value priority = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    propertyName' <- textToCString propertyName
+    value' <- textToCString value
+    priority' <- textToCString priority
+    onException (do
+        propagateGError $ webkit_dom_css_style_declaration_set_property _obj' propertyName' value' priority'
+        touchManagedPtr _obj
+        freeMem propertyName'
+        freeMem value'
+        freeMem priority'
+        return ()
+     ) (do
+        freeMem propertyName'
+        freeMem value'
+        freeMem priority'
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMCSSStyleDeclaration.hs-boot b/GI/WebKit2WebExtension/Objects/DOMCSSStyleDeclaration.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMCSSStyleDeclaration.hs-boot
@@ -0,0 +1,16 @@
+module GI.WebKit2WebExtension.Objects.DOMCSSStyleDeclaration where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMCSSStyleDeclaration = DOMCSSStyleDeclaration (ForeignPtr DOMCSSStyleDeclaration)
+instance GObject DOMCSSStyleDeclaration where
+class GObject o => DOMCSSStyleDeclarationK o
+instance (GObject o, IsDescendantOf DOMCSSStyleDeclaration o) => DOMCSSStyleDeclarationK o
+data DOMCSSStyleDeclarationCssTextPropertyInfo
+data DOMCSSStyleDeclarationLengthPropertyInfo
+data DOMCSSStyleDeclarationParentRulePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMCSSStyleSheet.hs b/GI/WebKit2WebExtension/Objects/DOMCSSStyleSheet.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMCSSStyleSheet.hs
@@ -0,0 +1,376 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMCSSStyleSheet
+    ( 
+
+-- * Exported types
+    DOMCSSStyleSheet(..)                    ,
+    DOMCSSStyleSheetK                       ,
+    toDOMCSSStyleSheet                      ,
+    noDOMCSSStyleSheet                      ,
+
+
+ -- * Methods
+-- ** dOMCSSStyleSheetAddRule
+    dOMCSSStyleSheetAddRule                 ,
+
+
+-- ** dOMCSSStyleSheetDeleteRule
+    dOMCSSStyleSheetDeleteRule              ,
+
+
+-- ** dOMCSSStyleSheetGetCssRules
+    dOMCSSStyleSheetGetCssRules             ,
+
+
+-- ** dOMCSSStyleSheetGetOwnerRule
+    dOMCSSStyleSheetGetOwnerRule            ,
+
+
+-- ** dOMCSSStyleSheetGetRules
+    dOMCSSStyleSheetGetRules                ,
+
+
+-- ** dOMCSSStyleSheetInsertRule
+    dOMCSSStyleSheetInsertRule              ,
+
+
+-- ** dOMCSSStyleSheetRemoveRule
+    dOMCSSStyleSheetRemoveRule              ,
+
+
+
+
+ -- * Properties
+-- ** CssRules
+    DOMCSSStyleSheetCssRulesPropertyInfo    ,
+    getDOMCSSStyleSheetCssRules             ,
+
+
+-- ** OwnerRule
+    DOMCSSStyleSheetOwnerRulePropertyInfo   ,
+    getDOMCSSStyleSheetOwnerRule            ,
+
+
+-- ** Rules
+    DOMCSSStyleSheetRulesPropertyInfo       ,
+    getDOMCSSStyleSheetRules                ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMCSSStyleSheet = DOMCSSStyleSheet (ForeignPtr DOMCSSStyleSheet)
+foreign import ccall "webkit_dom_css_style_sheet_get_type"
+    c_webkit_dom_css_style_sheet_get_type :: IO GType
+
+type instance ParentTypes DOMCSSStyleSheet = DOMCSSStyleSheetParentTypes
+type DOMCSSStyleSheetParentTypes = '[DOMStyleSheet, DOMObject, GObject.Object]
+
+instance GObject DOMCSSStyleSheet where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_css_style_sheet_get_type
+    
+
+class GObject o => DOMCSSStyleSheetK o
+instance (GObject o, IsDescendantOf DOMCSSStyleSheet o) => DOMCSSStyleSheetK o
+
+toDOMCSSStyleSheet :: DOMCSSStyleSheetK o => o -> IO DOMCSSStyleSheet
+toDOMCSSStyleSheet = unsafeCastTo DOMCSSStyleSheet
+
+noDOMCSSStyleSheet :: Maybe DOMCSSStyleSheet
+noDOMCSSStyleSheet = Nothing
+
+-- VVV Prop "css-rules"
+   -- Type: TInterface "WebKit2WebExtension" "DOMCSSRuleList"
+   -- Flags: [PropertyReadable]
+
+getDOMCSSStyleSheetCssRules :: (MonadIO m, DOMCSSStyleSheetK o) => o -> m DOMCSSRuleList
+getDOMCSSStyleSheetCssRules obj = liftIO $ getObjectPropertyObject obj "css-rules" DOMCSSRuleList
+
+data DOMCSSStyleSheetCssRulesPropertyInfo
+instance AttrInfo DOMCSSStyleSheetCssRulesPropertyInfo where
+    type AttrAllowedOps DOMCSSStyleSheetCssRulesPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMCSSStyleSheetCssRulesPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMCSSStyleSheetCssRulesPropertyInfo = DOMCSSStyleSheetK
+    type AttrGetType DOMCSSStyleSheetCssRulesPropertyInfo = DOMCSSRuleList
+    type AttrLabel DOMCSSStyleSheetCssRulesPropertyInfo = "DOMCSSStyleSheet::css-rules"
+    attrGet _ = getDOMCSSStyleSheetCssRules
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "owner-rule"
+   -- Type: TInterface "WebKit2WebExtension" "DOMCSSRule"
+   -- Flags: [PropertyReadable]
+
+getDOMCSSStyleSheetOwnerRule :: (MonadIO m, DOMCSSStyleSheetK o) => o -> m DOMCSSRule
+getDOMCSSStyleSheetOwnerRule obj = liftIO $ getObjectPropertyObject obj "owner-rule" DOMCSSRule
+
+data DOMCSSStyleSheetOwnerRulePropertyInfo
+instance AttrInfo DOMCSSStyleSheetOwnerRulePropertyInfo where
+    type AttrAllowedOps DOMCSSStyleSheetOwnerRulePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMCSSStyleSheetOwnerRulePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMCSSStyleSheetOwnerRulePropertyInfo = DOMCSSStyleSheetK
+    type AttrGetType DOMCSSStyleSheetOwnerRulePropertyInfo = DOMCSSRule
+    type AttrLabel DOMCSSStyleSheetOwnerRulePropertyInfo = "DOMCSSStyleSheet::owner-rule"
+    attrGet _ = getDOMCSSStyleSheetOwnerRule
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "rules"
+   -- Type: TInterface "WebKit2WebExtension" "DOMCSSRuleList"
+   -- Flags: [PropertyReadable]
+
+getDOMCSSStyleSheetRules :: (MonadIO m, DOMCSSStyleSheetK o) => o -> m DOMCSSRuleList
+getDOMCSSStyleSheetRules obj = liftIO $ getObjectPropertyObject obj "rules" DOMCSSRuleList
+
+data DOMCSSStyleSheetRulesPropertyInfo
+instance AttrInfo DOMCSSStyleSheetRulesPropertyInfo where
+    type AttrAllowedOps DOMCSSStyleSheetRulesPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMCSSStyleSheetRulesPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMCSSStyleSheetRulesPropertyInfo = DOMCSSStyleSheetK
+    type AttrGetType DOMCSSStyleSheetRulesPropertyInfo = DOMCSSRuleList
+    type AttrLabel DOMCSSStyleSheetRulesPropertyInfo = "DOMCSSStyleSheet::rules"
+    attrGet _ = getDOMCSSStyleSheetRules
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMCSSStyleSheet = DOMCSSStyleSheetAttributeList
+type DOMCSSStyleSheetAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("css-rules", DOMCSSStyleSheetCssRulesPropertyInfo), '("disabled", DOMStyleSheetDisabledPropertyInfo), '("href", DOMStyleSheetHrefPropertyInfo), '("media", DOMStyleSheetMediaPropertyInfo), '("owner-node", DOMStyleSheetOwnerNodePropertyInfo), '("owner-rule", DOMCSSStyleSheetOwnerRulePropertyInfo), '("parent-style-sheet", DOMStyleSheetParentStyleSheetPropertyInfo), '("rules", DOMCSSStyleSheetRulesPropertyInfo), '("title", DOMStyleSheetTitlePropertyInfo), '("type", DOMStyleSheetTypePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMCSSStyleSheet = DOMCSSStyleSheetSignalList
+type DOMCSSStyleSheetSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMCSSStyleSheet::add_rule
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selector", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "style", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selector", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "style", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_sheet_add_rule" webkit_dom_css_style_sheet_add_rule :: 
+    Ptr DOMCSSStyleSheet ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleSheet"
+    CString ->                              -- selector : TBasicType TUTF8
+    CString ->                              -- style : TBasicType TUTF8
+    Word64 ->                               -- index : TBasicType TUInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO Int64
+
+
+dOMCSSStyleSheetAddRule ::
+    (MonadIO m, DOMCSSStyleSheetK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- selector
+    T.Text ->                               -- style
+    Word64 ->                               -- index
+    m Int64
+dOMCSSStyleSheetAddRule _obj selector style index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    selector' <- textToCString selector
+    style' <- textToCString style
+    onException (do
+        result <- propagateGError $ webkit_dom_css_style_sheet_add_rule _obj' selector' style' index
+        touchManagedPtr _obj
+        freeMem selector'
+        freeMem style'
+        return result
+     ) (do
+        freeMem selector'
+        freeMem style'
+     )
+
+-- method DOMCSSStyleSheet::delete_rule
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_sheet_delete_rule" webkit_dom_css_style_sheet_delete_rule :: 
+    Ptr DOMCSSStyleSheet ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleSheet"
+    Word64 ->                               -- index : TBasicType TUInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMCSSStyleSheetDeleteRule ::
+    (MonadIO m, DOMCSSStyleSheetK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- index
+    m ()
+dOMCSSStyleSheetDeleteRule _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        propagateGError $ webkit_dom_css_style_sheet_delete_rule _obj' index
+        touchManagedPtr _obj
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMCSSStyleSheet::get_css_rules
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMCSSRuleList"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_sheet_get_css_rules" webkit_dom_css_style_sheet_get_css_rules :: 
+    Ptr DOMCSSStyleSheet ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleSheet"
+    IO (Ptr DOMCSSRuleList)
+
+
+dOMCSSStyleSheetGetCssRules ::
+    (MonadIO m, DOMCSSStyleSheetK a) =>
+    a ->                                    -- _obj
+    m DOMCSSRuleList
+dOMCSSStyleSheetGetCssRules _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_css_style_sheet_get_css_rules _obj'
+    checkUnexpectedReturnNULL "webkit_dom_css_style_sheet_get_css_rules" result
+    result' <- (wrapObject DOMCSSRuleList) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMCSSStyleSheet::get_owner_rule
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMCSSRule"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_sheet_get_owner_rule" webkit_dom_css_style_sheet_get_owner_rule :: 
+    Ptr DOMCSSStyleSheet ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleSheet"
+    IO (Ptr DOMCSSRule)
+
+
+dOMCSSStyleSheetGetOwnerRule ::
+    (MonadIO m, DOMCSSStyleSheetK a) =>
+    a ->                                    -- _obj
+    m DOMCSSRule
+dOMCSSStyleSheetGetOwnerRule _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_css_style_sheet_get_owner_rule _obj'
+    checkUnexpectedReturnNULL "webkit_dom_css_style_sheet_get_owner_rule" result
+    result' <- (wrapObject DOMCSSRule) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMCSSStyleSheet::get_rules
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMCSSRuleList"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_sheet_get_rules" webkit_dom_css_style_sheet_get_rules :: 
+    Ptr DOMCSSStyleSheet ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleSheet"
+    IO (Ptr DOMCSSRuleList)
+
+
+dOMCSSStyleSheetGetRules ::
+    (MonadIO m, DOMCSSStyleSheetK a) =>
+    a ->                                    -- _obj
+    m DOMCSSRuleList
+dOMCSSStyleSheetGetRules _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_css_style_sheet_get_rules _obj'
+    checkUnexpectedReturnNULL "webkit_dom_css_style_sheet_get_rules" result
+    result' <- (wrapObject DOMCSSRuleList) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMCSSStyleSheet::insert_rule
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rule", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "rule", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_sheet_insert_rule" webkit_dom_css_style_sheet_insert_rule :: 
+    Ptr DOMCSSStyleSheet ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleSheet"
+    CString ->                              -- rule : TBasicType TUTF8
+    Word64 ->                               -- index : TBasicType TUInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO Word64
+
+
+dOMCSSStyleSheetInsertRule ::
+    (MonadIO m, DOMCSSStyleSheetK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- rule
+    Word64 ->                               -- index
+    m Word64
+dOMCSSStyleSheetInsertRule _obj rule index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    rule' <- textToCString rule
+    onException (do
+        result <- propagateGError $ webkit_dom_css_style_sheet_insert_rule _obj' rule' index
+        touchManagedPtr _obj
+        freeMem rule'
+        return result
+     ) (do
+        freeMem rule'
+     )
+
+-- method DOMCSSStyleSheet::remove_rule
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_style_sheet_remove_rule" webkit_dom_css_style_sheet_remove_rule :: 
+    Ptr DOMCSSStyleSheet ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMCSSStyleSheet"
+    Word64 ->                               -- index : TBasicType TUInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMCSSStyleSheetRemoveRule ::
+    (MonadIO m, DOMCSSStyleSheetK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- index
+    m ()
+dOMCSSStyleSheetRemoveRule _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        propagateGError $ webkit_dom_css_style_sheet_remove_rule _obj' index
+        touchManagedPtr _obj
+        return ()
+     ) (do
+        return ()
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMCSSStyleSheet.hs-boot b/GI/WebKit2WebExtension/Objects/DOMCSSStyleSheet.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMCSSStyleSheet.hs-boot
@@ -0,0 +1,16 @@
+module GI.WebKit2WebExtension.Objects.DOMCSSStyleSheet where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMCSSStyleSheet = DOMCSSStyleSheet (ForeignPtr DOMCSSStyleSheet)
+instance GObject DOMCSSStyleSheet where
+class GObject o => DOMCSSStyleSheetK o
+instance (GObject o, IsDescendantOf DOMCSSStyleSheet o) => DOMCSSStyleSheetK o
+data DOMCSSStyleSheetCssRulesPropertyInfo
+data DOMCSSStyleSheetOwnerRulePropertyInfo
+data DOMCSSStyleSheetRulesPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMCSSValue.hs b/GI/WebKit2WebExtension/Objects/DOMCSSValue.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMCSSValue.hs
@@ -0,0 +1,214 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMCSSValue
+    ( 
+
+-- * Exported types
+    DOMCSSValue(..)                         ,
+    DOMCSSValueK                            ,
+    toDOMCSSValue                           ,
+    noDOMCSSValue                           ,
+
+
+ -- * Methods
+-- ** dOMCSSValueGetCssText
+    dOMCSSValueGetCssText                   ,
+
+
+-- ** dOMCSSValueGetCssValueType
+    dOMCSSValueGetCssValueType              ,
+
+
+-- ** dOMCSSValueSetCssText
+    dOMCSSValueSetCssText                   ,
+
+
+
+
+ -- * Properties
+-- ** CssText
+    DOMCSSValueCssTextPropertyInfo          ,
+    constructDOMCSSValueCssText             ,
+    getDOMCSSValueCssText                   ,
+    setDOMCSSValueCssText                   ,
+
+
+-- ** CssValueType
+    DOMCSSValueCssValueTypePropertyInfo     ,
+    getDOMCSSValueCssValueType              ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMCSSValue = DOMCSSValue (ForeignPtr DOMCSSValue)
+foreign import ccall "webkit_dom_css_value_get_type"
+    c_webkit_dom_css_value_get_type :: IO GType
+
+type instance ParentTypes DOMCSSValue = DOMCSSValueParentTypes
+type DOMCSSValueParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMCSSValue where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_css_value_get_type
+    
+
+class GObject o => DOMCSSValueK o
+instance (GObject o, IsDescendantOf DOMCSSValue o) => DOMCSSValueK o
+
+toDOMCSSValue :: DOMCSSValueK o => o -> IO DOMCSSValue
+toDOMCSSValue = unsafeCastTo DOMCSSValue
+
+noDOMCSSValue :: Maybe DOMCSSValue
+noDOMCSSValue = Nothing
+
+-- VVV Prop "css-text"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMCSSValueCssText :: (MonadIO m, DOMCSSValueK o) => o -> m T.Text
+getDOMCSSValueCssText obj = liftIO $ getObjectPropertyString obj "css-text"
+
+setDOMCSSValueCssText :: (MonadIO m, DOMCSSValueK o) => o -> T.Text -> m ()
+setDOMCSSValueCssText obj val = liftIO $ setObjectPropertyString obj "css-text" val
+
+constructDOMCSSValueCssText :: T.Text -> IO ([Char], GValue)
+constructDOMCSSValueCssText val = constructObjectPropertyString "css-text" val
+
+data DOMCSSValueCssTextPropertyInfo
+instance AttrInfo DOMCSSValueCssTextPropertyInfo where
+    type AttrAllowedOps DOMCSSValueCssTextPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMCSSValueCssTextPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMCSSValueCssTextPropertyInfo = DOMCSSValueK
+    type AttrGetType DOMCSSValueCssTextPropertyInfo = T.Text
+    type AttrLabel DOMCSSValueCssTextPropertyInfo = "DOMCSSValue::css-text"
+    attrGet _ = getDOMCSSValueCssText
+    attrSet _ = setDOMCSSValueCssText
+    attrConstruct _ = constructDOMCSSValueCssText
+
+-- VVV Prop "css-value-type"
+   -- Type: TBasicType TUInt32
+   -- Flags: [PropertyReadable]
+
+getDOMCSSValueCssValueType :: (MonadIO m, DOMCSSValueK o) => o -> m Word32
+getDOMCSSValueCssValueType obj = liftIO $ getObjectPropertyCUInt obj "css-value-type"
+
+data DOMCSSValueCssValueTypePropertyInfo
+instance AttrInfo DOMCSSValueCssValueTypePropertyInfo where
+    type AttrAllowedOps DOMCSSValueCssValueTypePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMCSSValueCssValueTypePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMCSSValueCssValueTypePropertyInfo = DOMCSSValueK
+    type AttrGetType DOMCSSValueCssValueTypePropertyInfo = Word32
+    type AttrLabel DOMCSSValueCssValueTypePropertyInfo = "DOMCSSValue::css-value-type"
+    attrGet _ = getDOMCSSValueCssValueType
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMCSSValue = DOMCSSValueAttributeList
+type DOMCSSValueAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("css-text", DOMCSSValueCssTextPropertyInfo), '("css-value-type", DOMCSSValueCssValueTypePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMCSSValue = DOMCSSValueSignalList
+type DOMCSSValueSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMCSSValue::get_css_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSValue", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSValue", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_value_get_css_text" webkit_dom_css_value_get_css_text :: 
+    Ptr DOMCSSValue ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMCSSValue"
+    IO CString
+
+
+dOMCSSValueGetCssText ::
+    (MonadIO m, DOMCSSValueK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMCSSValueGetCssText _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_css_value_get_css_text _obj'
+    checkUnexpectedReturnNULL "webkit_dom_css_value_get_css_text" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMCSSValue::get_css_value_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSValue", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSValue", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt16
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_value_get_css_value_type" webkit_dom_css_value_get_css_value_type :: 
+    Ptr DOMCSSValue ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMCSSValue"
+    IO Word16
+
+
+dOMCSSValueGetCssValueType ::
+    (MonadIO m, DOMCSSValueK a) =>
+    a ->                                    -- _obj
+    m Word16
+dOMCSSValueGetCssValueType _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_css_value_get_css_value_type _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMCSSValue::set_css_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSValue", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCSSValue", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_css_value_set_css_text" webkit_dom_css_value_set_css_text :: 
+    Ptr DOMCSSValue ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMCSSValue"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMCSSValueSetCssText ::
+    (MonadIO m, DOMCSSValueK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMCSSValueSetCssText _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_css_value_set_css_text _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMCSSValue.hs-boot b/GI/WebKit2WebExtension/Objects/DOMCSSValue.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMCSSValue.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMCSSValue where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMCSSValue = DOMCSSValue (ForeignPtr DOMCSSValue)
+instance GObject DOMCSSValue where
+class GObject o => DOMCSSValueK o
+instance (GObject o, IsDescendantOf DOMCSSValue o) => DOMCSSValueK o
+data DOMCSSValueCssTextPropertyInfo
+data DOMCSSValueCssValueTypePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMCharacterData.hs b/GI/WebKit2WebExtension/Objects/DOMCharacterData.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMCharacterData.hs
@@ -0,0 +1,408 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMCharacterData
+    ( 
+
+-- * Exported types
+    DOMCharacterData(..)                    ,
+    DOMCharacterDataK                       ,
+    toDOMCharacterData                      ,
+    noDOMCharacterData                      ,
+
+
+ -- * Methods
+-- ** dOMCharacterDataAppendData
+    dOMCharacterDataAppendData              ,
+
+
+-- ** dOMCharacterDataDeleteData
+    dOMCharacterDataDeleteData              ,
+
+
+-- ** dOMCharacterDataGetData
+    dOMCharacterDataGetData                 ,
+
+
+-- ** dOMCharacterDataGetLength
+    dOMCharacterDataGetLength               ,
+
+
+-- ** dOMCharacterDataInsertData
+    dOMCharacterDataInsertData              ,
+
+
+-- ** dOMCharacterDataReplaceData
+    dOMCharacterDataReplaceData             ,
+
+
+-- ** dOMCharacterDataSetData
+    dOMCharacterDataSetData                 ,
+
+
+-- ** dOMCharacterDataSubstringData
+    dOMCharacterDataSubstringData           ,
+
+
+
+
+ -- * Properties
+-- ** Data
+    DOMCharacterDataDataPropertyInfo        ,
+    constructDOMCharacterDataData           ,
+    getDOMCharacterDataData                 ,
+    setDOMCharacterDataData                 ,
+
+
+-- ** Length
+    DOMCharacterDataLengthPropertyInfo      ,
+    getDOMCharacterDataLength               ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMCharacterData = DOMCharacterData (ForeignPtr DOMCharacterData)
+foreign import ccall "webkit_dom_character_data_get_type"
+    c_webkit_dom_character_data_get_type :: IO GType
+
+type instance ParentTypes DOMCharacterData = DOMCharacterDataParentTypes
+type DOMCharacterDataParentTypes = '[DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMCharacterData where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_character_data_get_type
+    
+
+class GObject o => DOMCharacterDataK o
+instance (GObject o, IsDescendantOf DOMCharacterData o) => DOMCharacterDataK o
+
+toDOMCharacterData :: DOMCharacterDataK o => o -> IO DOMCharacterData
+toDOMCharacterData = unsafeCastTo DOMCharacterData
+
+noDOMCharacterData :: Maybe DOMCharacterData
+noDOMCharacterData = Nothing
+
+-- VVV Prop "data"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMCharacterDataData :: (MonadIO m, DOMCharacterDataK o) => o -> m T.Text
+getDOMCharacterDataData obj = liftIO $ getObjectPropertyString obj "data"
+
+setDOMCharacterDataData :: (MonadIO m, DOMCharacterDataK o) => o -> T.Text -> m ()
+setDOMCharacterDataData obj val = liftIO $ setObjectPropertyString obj "data" val
+
+constructDOMCharacterDataData :: T.Text -> IO ([Char], GValue)
+constructDOMCharacterDataData val = constructObjectPropertyString "data" val
+
+data DOMCharacterDataDataPropertyInfo
+instance AttrInfo DOMCharacterDataDataPropertyInfo where
+    type AttrAllowedOps DOMCharacterDataDataPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMCharacterDataDataPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMCharacterDataDataPropertyInfo = DOMCharacterDataK
+    type AttrGetType DOMCharacterDataDataPropertyInfo = T.Text
+    type AttrLabel DOMCharacterDataDataPropertyInfo = "DOMCharacterData::data"
+    attrGet _ = getDOMCharacterDataData
+    attrSet _ = setDOMCharacterDataData
+    attrConstruct _ = constructDOMCharacterDataData
+
+-- VVV Prop "length"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMCharacterDataLength :: (MonadIO m, DOMCharacterDataK o) => o -> m Word64
+getDOMCharacterDataLength obj = liftIO $ getObjectPropertyUInt64 obj "length"
+
+data DOMCharacterDataLengthPropertyInfo
+instance AttrInfo DOMCharacterDataLengthPropertyInfo where
+    type AttrAllowedOps DOMCharacterDataLengthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMCharacterDataLengthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMCharacterDataLengthPropertyInfo = DOMCharacterDataK
+    type AttrGetType DOMCharacterDataLengthPropertyInfo = Word64
+    type AttrLabel DOMCharacterDataLengthPropertyInfo = "DOMCharacterData::length"
+    attrGet _ = getDOMCharacterDataLength
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMCharacterData = DOMCharacterDataAttributeList
+type DOMCharacterDataAttributeList = ('[ '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("data", DOMCharacterDataDataPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("length", DOMCharacterDataLengthPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMCharacterData = DOMCharacterDataSignalList
+type DOMCharacterDataSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMCharacterData::append_data
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_character_data_append_data" webkit_dom_character_data_append_data :: 
+    Ptr DOMCharacterData ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMCharacterData"
+    CString ->                              -- data : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMCharacterDataAppendData ::
+    (MonadIO m, DOMCharacterDataK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- data
+    m ()
+dOMCharacterDataAppendData _obj data_ = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    data_' <- textToCString data_
+    onException (do
+        propagateGError $ webkit_dom_character_data_append_data _obj' data_'
+        touchManagedPtr _obj
+        freeMem data_'
+        return ()
+     ) (do
+        freeMem data_'
+     )
+
+-- method DOMCharacterData::delete_data
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_character_data_delete_data" webkit_dom_character_data_delete_data :: 
+    Ptr DOMCharacterData ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMCharacterData"
+    Word64 ->                               -- offset : TBasicType TUInt64
+    Word64 ->                               -- length : TBasicType TUInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMCharacterDataDeleteData ::
+    (MonadIO m, DOMCharacterDataK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- offset
+    Word64 ->                               -- length
+    m ()
+dOMCharacterDataDeleteData _obj offset length_ = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        propagateGError $ webkit_dom_character_data_delete_data _obj' offset length_
+        touchManagedPtr _obj
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMCharacterData::get_data
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_character_data_get_data" webkit_dom_character_data_get_data :: 
+    Ptr DOMCharacterData ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMCharacterData"
+    IO CString
+
+
+dOMCharacterDataGetData ::
+    (MonadIO m, DOMCharacterDataK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMCharacterDataGetData _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_character_data_get_data _obj'
+    checkUnexpectedReturnNULL "webkit_dom_character_data_get_data" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMCharacterData::get_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_character_data_get_length" webkit_dom_character_data_get_length :: 
+    Ptr DOMCharacterData ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMCharacterData"
+    IO Word64
+
+
+dOMCharacterDataGetLength ::
+    (MonadIO m, DOMCharacterDataK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMCharacterDataGetLength _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_character_data_get_length _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMCharacterData::insert_data
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_character_data_insert_data" webkit_dom_character_data_insert_data :: 
+    Ptr DOMCharacterData ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMCharacterData"
+    Word64 ->                               -- offset : TBasicType TUInt64
+    CString ->                              -- data : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMCharacterDataInsertData ::
+    (MonadIO m, DOMCharacterDataK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- offset
+    T.Text ->                               -- data
+    m ()
+dOMCharacterDataInsertData _obj offset data_ = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    data_' <- textToCString data_
+    onException (do
+        propagateGError $ webkit_dom_character_data_insert_data _obj' offset data_'
+        touchManagedPtr _obj
+        freeMem data_'
+        return ()
+     ) (do
+        freeMem data_'
+     )
+
+-- method DOMCharacterData::replace_data
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_character_data_replace_data" webkit_dom_character_data_replace_data :: 
+    Ptr DOMCharacterData ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMCharacterData"
+    Word64 ->                               -- offset : TBasicType TUInt64
+    Word64 ->                               -- length : TBasicType TUInt64
+    CString ->                              -- data : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMCharacterDataReplaceData ::
+    (MonadIO m, DOMCharacterDataK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- offset
+    Word64 ->                               -- length
+    T.Text ->                               -- data
+    m ()
+dOMCharacterDataReplaceData _obj offset length_ data_ = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    data_' <- textToCString data_
+    onException (do
+        propagateGError $ webkit_dom_character_data_replace_data _obj' offset length_ data_'
+        touchManagedPtr _obj
+        freeMem data_'
+        return ()
+     ) (do
+        freeMem data_'
+     )
+
+-- method DOMCharacterData::set_data
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_character_data_set_data" webkit_dom_character_data_set_data :: 
+    Ptr DOMCharacterData ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMCharacterData"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMCharacterDataSetData ::
+    (MonadIO m, DOMCharacterDataK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMCharacterDataSetData _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_character_data_set_data _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+-- method DOMCharacterData::substring_data
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMCharacterData", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "length", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_character_data_substring_data" webkit_dom_character_data_substring_data :: 
+    Ptr DOMCharacterData ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMCharacterData"
+    Word64 ->                               -- offset : TBasicType TUInt64
+    Word64 ->                               -- length : TBasicType TUInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO CString
+
+
+dOMCharacterDataSubstringData ::
+    (MonadIO m, DOMCharacterDataK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- offset
+    Word64 ->                               -- length
+    m T.Text
+dOMCharacterDataSubstringData _obj offset length_ = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_character_data_substring_data _obj' offset length_
+        checkUnexpectedReturnNULL "webkit_dom_character_data_substring_data" result
+        result' <- cstringToText result
+        freeMem result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMCharacterData.hs-boot b/GI/WebKit2WebExtension/Objects/DOMCharacterData.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMCharacterData.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMCharacterData where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMCharacterData = DOMCharacterData (ForeignPtr DOMCharacterData)
+instance GObject DOMCharacterData where
+class GObject o => DOMCharacterDataK o
+instance (GObject o, IsDescendantOf DOMCharacterData o) => DOMCharacterDataK o
+data DOMCharacterDataDataPropertyInfo
+data DOMCharacterDataLengthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMComment.hs b/GI/WebKit2WebExtension/Objects/DOMComment.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMComment.hs
@@ -0,0 +1,58 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMComment
+    ( 
+
+-- * Exported types
+    DOMComment(..)                          ,
+    DOMCommentK                             ,
+    toDOMComment                            ,
+    noDOMComment                            ,
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMComment = DOMComment (ForeignPtr DOMComment)
+foreign import ccall "webkit_dom_comment_get_type"
+    c_webkit_dom_comment_get_type :: IO GType
+
+type instance ParentTypes DOMComment = DOMCommentParentTypes
+type DOMCommentParentTypes = '[DOMCharacterData, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMComment where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_comment_get_type
+    
+
+class GObject o => DOMCommentK o
+instance (GObject o, IsDescendantOf DOMComment o) => DOMCommentK o
+
+toDOMComment :: DOMCommentK o => o -> IO DOMComment
+toDOMComment = unsafeCastTo DOMComment
+
+noDOMComment :: Maybe DOMComment
+noDOMComment = Nothing
+
+type instance AttributeList DOMComment = DOMCommentAttributeList
+type DOMCommentAttributeList = ('[ '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("data", DOMCharacterDataDataPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("length", DOMCharacterDataLengthPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMComment = DOMCommentSignalList
+type DOMCommentSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMComment.hs-boot b/GI/WebKit2WebExtension/Objects/DOMComment.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMComment.hs-boot
@@ -0,0 +1,13 @@
+module GI.WebKit2WebExtension.Objects.DOMComment where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMComment = DOMComment (ForeignPtr DOMComment)
+instance GObject DOMComment where
+class GObject o => DOMCommentK o
+instance (GObject o, IsDescendantOf DOMComment o) => DOMCommentK o
diff --git a/GI/WebKit2WebExtension/Objects/DOMDOMImplementation.hs b/GI/WebKit2WebExtension/Objects/DOMDOMImplementation.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMDOMImplementation.hs
@@ -0,0 +1,281 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMDOMImplementation
+    ( 
+
+-- * Exported types
+    DOMDOMImplementation(..)                ,
+    DOMDOMImplementationK                   ,
+    toDOMDOMImplementation                  ,
+    noDOMDOMImplementation                  ,
+
+
+ -- * Methods
+-- ** dOMDOMImplementationCreateCssStyleSheet
+    dOMDOMImplementationCreateCssStyleSheet ,
+
+
+-- ** dOMDOMImplementationCreateDocument
+    dOMDOMImplementationCreateDocument      ,
+
+
+-- ** dOMDOMImplementationCreateDocumentType
+    dOMDOMImplementationCreateDocumentType  ,
+
+
+-- ** dOMDOMImplementationCreateHtmlDocument
+    dOMDOMImplementationCreateHtmlDocument  ,
+
+
+-- ** dOMDOMImplementationHasFeature
+    dOMDOMImplementationHasFeature          ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMDOMImplementation = DOMDOMImplementation (ForeignPtr DOMDOMImplementation)
+foreign import ccall "webkit_dom_dom_implementation_get_type"
+    c_webkit_dom_dom_implementation_get_type :: IO GType
+
+type instance ParentTypes DOMDOMImplementation = DOMDOMImplementationParentTypes
+type DOMDOMImplementationParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMDOMImplementation where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_dom_implementation_get_type
+    
+
+class GObject o => DOMDOMImplementationK o
+instance (GObject o, IsDescendantOf DOMDOMImplementation o) => DOMDOMImplementationK o
+
+toDOMDOMImplementation :: DOMDOMImplementationK o => o -> IO DOMDOMImplementation
+toDOMDOMImplementation = unsafeCastTo DOMDOMImplementation
+
+noDOMDOMImplementation :: Maybe DOMDOMImplementation
+noDOMDOMImplementation = Nothing
+
+type instance AttributeList DOMDOMImplementation = DOMDOMImplementationAttributeList
+type DOMDOMImplementationAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMDOMImplementation = DOMDOMImplementationSignalList
+type DOMDOMImplementationSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMDOMImplementation::create_css_style_sheet
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDOMImplementation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "title", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "media", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDOMImplementation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "title", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "media", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMCSSStyleSheet"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_dom_implementation_create_css_style_sheet" webkit_dom_dom_implementation_create_css_style_sheet :: 
+    Ptr DOMDOMImplementation ->             -- _obj : TInterface "WebKit2WebExtension" "DOMDOMImplementation"
+    CString ->                              -- title : TBasicType TUTF8
+    CString ->                              -- media : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMCSSStyleSheet)
+
+
+dOMDOMImplementationCreateCssStyleSheet ::
+    (MonadIO m, DOMDOMImplementationK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- title
+    T.Text ->                               -- media
+    m DOMCSSStyleSheet
+dOMDOMImplementationCreateCssStyleSheet _obj title media = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    title' <- textToCString title
+    media' <- textToCString media
+    onException (do
+        result <- propagateGError $ webkit_dom_dom_implementation_create_css_style_sheet _obj' title' media'
+        checkUnexpectedReturnNULL "webkit_dom_dom_implementation_create_css_style_sheet" result
+        result' <- (wrapObject DOMCSSStyleSheet) result
+        touchManagedPtr _obj
+        freeMem title'
+        freeMem media'
+        return result'
+     ) (do
+        freeMem title'
+        freeMem media'
+     )
+
+-- method DOMDOMImplementation::create_document
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDOMImplementation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "qualifiedName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "doctype", argType = TInterface "WebKit2WebExtension" "DOMDocumentType", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDOMImplementation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "qualifiedName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "doctype", argType = TInterface "WebKit2WebExtension" "DOMDocumentType", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDocument"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_dom_implementation_create_document" webkit_dom_dom_implementation_create_document :: 
+    Ptr DOMDOMImplementation ->             -- _obj : TInterface "WebKit2WebExtension" "DOMDOMImplementation"
+    CString ->                              -- namespaceURI : TBasicType TUTF8
+    CString ->                              -- qualifiedName : TBasicType TUTF8
+    Ptr DOMDocumentType ->                  -- doctype : TInterface "WebKit2WebExtension" "DOMDocumentType"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMDocument)
+
+
+dOMDOMImplementationCreateDocument ::
+    (MonadIO m, DOMDOMImplementationK a, DOMDocumentTypeK b) =>
+    a ->                                    -- _obj
+    Maybe (T.Text) ->                       -- namespaceURI
+    T.Text ->                               -- qualifiedName
+    Maybe (b) ->                            -- doctype
+    m DOMDocument
+dOMDOMImplementationCreateDocument _obj namespaceURI qualifiedName doctype = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    maybeNamespaceURI <- case namespaceURI of
+        Nothing -> return nullPtr
+        Just jNamespaceURI -> do
+            jNamespaceURI' <- textToCString jNamespaceURI
+            return jNamespaceURI'
+    qualifiedName' <- textToCString qualifiedName
+    maybeDoctype <- case doctype of
+        Nothing -> return nullPtr
+        Just jDoctype -> do
+            let jDoctype' = unsafeManagedPtrCastPtr jDoctype
+            return jDoctype'
+    onException (do
+        result <- propagateGError $ webkit_dom_dom_implementation_create_document _obj' maybeNamespaceURI qualifiedName' maybeDoctype
+        checkUnexpectedReturnNULL "webkit_dom_dom_implementation_create_document" result
+        result' <- (newObject DOMDocument) result
+        touchManagedPtr _obj
+        whenJust doctype touchManagedPtr
+        freeMem maybeNamespaceURI
+        freeMem qualifiedName'
+        return result'
+     ) (do
+        freeMem maybeNamespaceURI
+        freeMem qualifiedName'
+     )
+
+-- method DOMDOMImplementation::create_document_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDOMImplementation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "qualifiedName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "publicId", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "systemId", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDOMImplementation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "qualifiedName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "publicId", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "systemId", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDocumentType"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_dom_implementation_create_document_type" webkit_dom_dom_implementation_create_document_type :: 
+    Ptr DOMDOMImplementation ->             -- _obj : TInterface "WebKit2WebExtension" "DOMDOMImplementation"
+    CString ->                              -- qualifiedName : TBasicType TUTF8
+    CString ->                              -- publicId : TBasicType TUTF8
+    CString ->                              -- systemId : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMDocumentType)
+
+
+dOMDOMImplementationCreateDocumentType ::
+    (MonadIO m, DOMDOMImplementationK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- qualifiedName
+    T.Text ->                               -- publicId
+    T.Text ->                               -- systemId
+    m DOMDocumentType
+dOMDOMImplementationCreateDocumentType _obj qualifiedName publicId systemId = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    qualifiedName' <- textToCString qualifiedName
+    publicId' <- textToCString publicId
+    systemId' <- textToCString systemId
+    onException (do
+        result <- propagateGError $ webkit_dom_dom_implementation_create_document_type _obj' qualifiedName' publicId' systemId'
+        checkUnexpectedReturnNULL "webkit_dom_dom_implementation_create_document_type" result
+        result' <- (newObject DOMDocumentType) result
+        touchManagedPtr _obj
+        freeMem qualifiedName'
+        freeMem publicId'
+        freeMem systemId'
+        return result'
+     ) (do
+        freeMem qualifiedName'
+        freeMem publicId'
+        freeMem systemId'
+     )
+
+-- method DOMDOMImplementation::create_html_document
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDOMImplementation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "title", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDOMImplementation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "title", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_dom_implementation_create_html_document" webkit_dom_dom_implementation_create_html_document :: 
+    Ptr DOMDOMImplementation ->             -- _obj : TInterface "WebKit2WebExtension" "DOMDOMImplementation"
+    CString ->                              -- title : TBasicType TUTF8
+    IO (Ptr DOMHTMLDocument)
+
+
+dOMDOMImplementationCreateHtmlDocument ::
+    (MonadIO m, DOMDOMImplementationK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- title
+    m DOMHTMLDocument
+dOMDOMImplementationCreateHtmlDocument _obj title = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    title' <- textToCString title
+    result <- webkit_dom_dom_implementation_create_html_document _obj' title'
+    checkUnexpectedReturnNULL "webkit_dom_dom_implementation_create_html_document" result
+    result' <- (newObject DOMHTMLDocument) result
+    touchManagedPtr _obj
+    freeMem title'
+    return result'
+
+-- method DOMDOMImplementation::has_feature
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDOMImplementation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "feature", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "version", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDOMImplementation", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "feature", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "version", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_dom_implementation_has_feature" webkit_dom_dom_implementation_has_feature :: 
+    Ptr DOMDOMImplementation ->             -- _obj : TInterface "WebKit2WebExtension" "DOMDOMImplementation"
+    CString ->                              -- feature : TBasicType TUTF8
+    CString ->                              -- version : TBasicType TUTF8
+    IO CInt
+
+
+dOMDOMImplementationHasFeature ::
+    (MonadIO m, DOMDOMImplementationK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- feature
+    T.Text ->                               -- version
+    m Bool
+dOMDOMImplementationHasFeature _obj feature version = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    feature' <- textToCString feature
+    version' <- textToCString version
+    result <- webkit_dom_dom_implementation_has_feature _obj' feature' version'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    freeMem feature'
+    freeMem version'
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMDOMImplementation.hs-boot b/GI/WebKit2WebExtension/Objects/DOMDOMImplementation.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMDOMImplementation.hs-boot
@@ -0,0 +1,13 @@
+module GI.WebKit2WebExtension.Objects.DOMDOMImplementation where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMDOMImplementation = DOMDOMImplementation (ForeignPtr DOMDOMImplementation)
+instance GObject DOMDOMImplementation where
+class GObject o => DOMDOMImplementationK o
+instance (GObject o, IsDescendantOf DOMDOMImplementation o) => DOMDOMImplementationK o
diff --git a/GI/WebKit2WebExtension/Objects/DOMDOMWindow.hs b/GI/WebKit2WebExtension/Objects/DOMDOMWindow.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMDOMWindow.hs
@@ -0,0 +1,746 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMDOMWindow
+    ( 
+
+-- * Exported types
+    DOMDOMWindow(..)                        ,
+    DOMDOMWindowK                           ,
+    toDOMDOMWindow                          ,
+    noDOMDOMWindow                          ,
+
+
+ -- * Methods
+-- ** dOMDOMWindowWebkitMessageHandlersPostMessage
+    dOMDOMWindowWebkitMessageHandlersPostMessage,
+
+
+
+
+ -- * Properties
+-- ** Closed
+    DOMDOMWindowClosedPropertyInfo          ,
+    getDOMDOMWindowClosed                   ,
+
+
+-- ** DefaultStatus
+    DOMDOMWindowDefaultStatusPropertyInfo   ,
+    constructDOMDOMWindowDefaultStatus      ,
+    getDOMDOMWindowDefaultStatus            ,
+    setDOMDOMWindowDefaultStatus            ,
+
+
+-- ** DevicePixelRatio
+    DOMDOMWindowDevicePixelRatioPropertyInfo,
+    getDOMDOMWindowDevicePixelRatio         ,
+
+
+-- ** Document
+    DOMDOMWindowDocumentPropertyInfo        ,
+    getDOMDOMWindowDocument                 ,
+
+
+-- ** FrameElement
+    DOMDOMWindowFrameElementPropertyInfo    ,
+    getDOMDOMWindowFrameElement             ,
+
+
+-- ** Frames
+    DOMDOMWindowFramesPropertyInfo          ,
+    getDOMDOMWindowFrames                   ,
+
+
+-- ** InnerHeight
+    DOMDOMWindowInnerHeightPropertyInfo     ,
+    getDOMDOMWindowInnerHeight              ,
+
+
+-- ** InnerWidth
+    DOMDOMWindowInnerWidthPropertyInfo      ,
+    getDOMDOMWindowInnerWidth               ,
+
+
+-- ** Length
+    DOMDOMWindowLengthPropertyInfo          ,
+    getDOMDOMWindowLength                   ,
+
+
+-- ** Name
+    DOMDOMWindowNamePropertyInfo            ,
+    constructDOMDOMWindowName               ,
+    getDOMDOMWindowName                     ,
+    setDOMDOMWindowName                     ,
+
+
+-- ** OffscreenBuffering
+    DOMDOMWindowOffscreenBufferingPropertyInfo,
+    getDOMDOMWindowOffscreenBuffering       ,
+
+
+-- ** Opener
+    DOMDOMWindowOpenerPropertyInfo          ,
+    getDOMDOMWindowOpener                   ,
+
+
+-- ** OuterHeight
+    DOMDOMWindowOuterHeightPropertyInfo     ,
+    getDOMDOMWindowOuterHeight              ,
+
+
+-- ** OuterWidth
+    DOMDOMWindowOuterWidthPropertyInfo      ,
+    getDOMDOMWindowOuterWidth               ,
+
+
+-- ** PageXOffset
+    DOMDOMWindowPageXOffsetPropertyInfo     ,
+    getDOMDOMWindowPageXOffset              ,
+
+
+-- ** PageYOffset
+    DOMDOMWindowPageYOffsetPropertyInfo     ,
+    getDOMDOMWindowPageYOffset              ,
+
+
+-- ** Parent
+    DOMDOMWindowParentPropertyInfo          ,
+    getDOMDOMWindowParent                   ,
+
+
+-- ** ScreenLeft
+    DOMDOMWindowScreenLeftPropertyInfo      ,
+    getDOMDOMWindowScreenLeft               ,
+
+
+-- ** ScreenTop
+    DOMDOMWindowScreenTopPropertyInfo       ,
+    getDOMDOMWindowScreenTop                ,
+
+
+-- ** ScreenX
+    DOMDOMWindowScreenXPropertyInfo         ,
+    getDOMDOMWindowScreenX                  ,
+
+
+-- ** ScreenY
+    DOMDOMWindowScreenYPropertyInfo         ,
+    getDOMDOMWindowScreenY                  ,
+
+
+-- ** ScrollX
+    DOMDOMWindowScrollXPropertyInfo         ,
+    getDOMDOMWindowScrollX                  ,
+
+
+-- ** ScrollY
+    DOMDOMWindowScrollYPropertyInfo         ,
+    getDOMDOMWindowScrollY                  ,
+
+
+-- ** Self
+    DOMDOMWindowSelfPropertyInfo            ,
+    getDOMDOMWindowSelf                     ,
+
+
+-- ** Status
+    DOMDOMWindowStatusPropertyInfo          ,
+    constructDOMDOMWindowStatus             ,
+    getDOMDOMWindowStatus                   ,
+    setDOMDOMWindowStatus                   ,
+
+
+-- ** Top
+    DOMDOMWindowTopPropertyInfo             ,
+    getDOMDOMWindowTop                      ,
+
+
+-- ** Window
+    DOMDOMWindowWindowPropertyInfo          ,
+    getDOMDOMWindowWindow                   ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMDOMWindow = DOMDOMWindow (ForeignPtr DOMDOMWindow)
+foreign import ccall "webkit_dom_dom_window_get_type"
+    c_webkit_dom_dom_window_get_type :: IO GType
+
+type instance ParentTypes DOMDOMWindow = DOMDOMWindowParentTypes
+type DOMDOMWindowParentTypes = '[DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMDOMWindow where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_dom_window_get_type
+    
+
+class GObject o => DOMDOMWindowK o
+instance (GObject o, IsDescendantOf DOMDOMWindow o) => DOMDOMWindowK o
+
+toDOMDOMWindow :: DOMDOMWindowK o => o -> IO DOMDOMWindow
+toDOMDOMWindow = unsafeCastTo DOMDOMWindow
+
+noDOMDOMWindow :: Maybe DOMDOMWindow
+noDOMDOMWindow = Nothing
+
+-- VVV Prop "closed"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowClosed :: (MonadIO m, DOMDOMWindowK o) => o -> m Bool
+getDOMDOMWindowClosed obj = liftIO $ getObjectPropertyBool obj "closed"
+
+data DOMDOMWindowClosedPropertyInfo
+instance AttrInfo DOMDOMWindowClosedPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowClosedPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowClosedPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowClosedPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowClosedPropertyInfo = Bool
+    type AttrLabel DOMDOMWindowClosedPropertyInfo = "DOMDOMWindow::closed"
+    attrGet _ = getDOMDOMWindowClosed
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "default-status"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMDOMWindowDefaultStatus :: (MonadIO m, DOMDOMWindowK o) => o -> m T.Text
+getDOMDOMWindowDefaultStatus obj = liftIO $ getObjectPropertyString obj "default-status"
+
+setDOMDOMWindowDefaultStatus :: (MonadIO m, DOMDOMWindowK o) => o -> T.Text -> m ()
+setDOMDOMWindowDefaultStatus obj val = liftIO $ setObjectPropertyString obj "default-status" val
+
+constructDOMDOMWindowDefaultStatus :: T.Text -> IO ([Char], GValue)
+constructDOMDOMWindowDefaultStatus val = constructObjectPropertyString "default-status" val
+
+data DOMDOMWindowDefaultStatusPropertyInfo
+instance AttrInfo DOMDOMWindowDefaultStatusPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowDefaultStatusPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowDefaultStatusPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMDOMWindowDefaultStatusPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowDefaultStatusPropertyInfo = T.Text
+    type AttrLabel DOMDOMWindowDefaultStatusPropertyInfo = "DOMDOMWindow::default-status"
+    attrGet _ = getDOMDOMWindowDefaultStatus
+    attrSet _ = setDOMDOMWindowDefaultStatus
+    attrConstruct _ = constructDOMDOMWindowDefaultStatus
+
+-- VVV Prop "device-pixel-ratio"
+   -- Type: TBasicType TDouble
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowDevicePixelRatio :: (MonadIO m, DOMDOMWindowK o) => o -> m Double
+getDOMDOMWindowDevicePixelRatio obj = liftIO $ getObjectPropertyDouble obj "device-pixel-ratio"
+
+data DOMDOMWindowDevicePixelRatioPropertyInfo
+instance AttrInfo DOMDOMWindowDevicePixelRatioPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowDevicePixelRatioPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowDevicePixelRatioPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowDevicePixelRatioPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowDevicePixelRatioPropertyInfo = Double
+    type AttrLabel DOMDOMWindowDevicePixelRatioPropertyInfo = "DOMDOMWindow::device-pixel-ratio"
+    attrGet _ = getDOMDOMWindowDevicePixelRatio
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "document"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDocument"
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowDocument :: (MonadIO m, DOMDOMWindowK o) => o -> m DOMDocument
+getDOMDOMWindowDocument obj = liftIO $ getObjectPropertyObject obj "document" DOMDocument
+
+data DOMDOMWindowDocumentPropertyInfo
+instance AttrInfo DOMDOMWindowDocumentPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowDocumentPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowDocumentPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowDocumentPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowDocumentPropertyInfo = DOMDocument
+    type AttrLabel DOMDOMWindowDocumentPropertyInfo = "DOMDOMWindow::document"
+    attrGet _ = getDOMDOMWindowDocument
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "frame-element"
+   -- Type: TInterface "WebKit2WebExtension" "DOMElement"
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowFrameElement :: (MonadIO m, DOMDOMWindowK o) => o -> m DOMElement
+getDOMDOMWindowFrameElement obj = liftIO $ getObjectPropertyObject obj "frame-element" DOMElement
+
+data DOMDOMWindowFrameElementPropertyInfo
+instance AttrInfo DOMDOMWindowFrameElementPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowFrameElementPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowFrameElementPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowFrameElementPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowFrameElementPropertyInfo = DOMElement
+    type AttrLabel DOMDOMWindowFrameElementPropertyInfo = "DOMDOMWindow::frame-element"
+    attrGet _ = getDOMDOMWindowFrameElement
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "frames"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDOMWindow"
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowFrames :: (MonadIO m, DOMDOMWindowK o) => o -> m DOMDOMWindow
+getDOMDOMWindowFrames obj = liftIO $ getObjectPropertyObject obj "frames" DOMDOMWindow
+
+data DOMDOMWindowFramesPropertyInfo
+instance AttrInfo DOMDOMWindowFramesPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowFramesPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowFramesPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowFramesPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowFramesPropertyInfo = DOMDOMWindow
+    type AttrLabel DOMDOMWindowFramesPropertyInfo = "DOMDOMWindow::frames"
+    attrGet _ = getDOMDOMWindowFrames
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "inner-height"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowInnerHeight :: (MonadIO m, DOMDOMWindowK o) => o -> m Int64
+getDOMDOMWindowInnerHeight obj = liftIO $ getObjectPropertyInt64 obj "inner-height"
+
+data DOMDOMWindowInnerHeightPropertyInfo
+instance AttrInfo DOMDOMWindowInnerHeightPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowInnerHeightPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowInnerHeightPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowInnerHeightPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowInnerHeightPropertyInfo = Int64
+    type AttrLabel DOMDOMWindowInnerHeightPropertyInfo = "DOMDOMWindow::inner-height"
+    attrGet _ = getDOMDOMWindowInnerHeight
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "inner-width"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowInnerWidth :: (MonadIO m, DOMDOMWindowK o) => o -> m Int64
+getDOMDOMWindowInnerWidth obj = liftIO $ getObjectPropertyInt64 obj "inner-width"
+
+data DOMDOMWindowInnerWidthPropertyInfo
+instance AttrInfo DOMDOMWindowInnerWidthPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowInnerWidthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowInnerWidthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowInnerWidthPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowInnerWidthPropertyInfo = Int64
+    type AttrLabel DOMDOMWindowInnerWidthPropertyInfo = "DOMDOMWindow::inner-width"
+    attrGet _ = getDOMDOMWindowInnerWidth
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "length"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowLength :: (MonadIO m, DOMDOMWindowK o) => o -> m Word64
+getDOMDOMWindowLength obj = liftIO $ getObjectPropertyUInt64 obj "length"
+
+data DOMDOMWindowLengthPropertyInfo
+instance AttrInfo DOMDOMWindowLengthPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowLengthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowLengthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowLengthPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowLengthPropertyInfo = Word64
+    type AttrLabel DOMDOMWindowLengthPropertyInfo = "DOMDOMWindow::length"
+    attrGet _ = getDOMDOMWindowLength
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMDOMWindowName :: (MonadIO m, DOMDOMWindowK o) => o -> m T.Text
+getDOMDOMWindowName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMDOMWindowName :: (MonadIO m, DOMDOMWindowK o) => o -> T.Text -> m ()
+setDOMDOMWindowName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMDOMWindowName :: T.Text -> IO ([Char], GValue)
+constructDOMDOMWindowName val = constructObjectPropertyString "name" val
+
+data DOMDOMWindowNamePropertyInfo
+instance AttrInfo DOMDOMWindowNamePropertyInfo where
+    type AttrAllowedOps DOMDOMWindowNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMDOMWindowNamePropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowNamePropertyInfo = T.Text
+    type AttrLabel DOMDOMWindowNamePropertyInfo = "DOMDOMWindow::name"
+    attrGet _ = getDOMDOMWindowName
+    attrSet _ = setDOMDOMWindowName
+    attrConstruct _ = constructDOMDOMWindowName
+
+-- VVV Prop "offscreen-buffering"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowOffscreenBuffering :: (MonadIO m, DOMDOMWindowK o) => o -> m Bool
+getDOMDOMWindowOffscreenBuffering obj = liftIO $ getObjectPropertyBool obj "offscreen-buffering"
+
+data DOMDOMWindowOffscreenBufferingPropertyInfo
+instance AttrInfo DOMDOMWindowOffscreenBufferingPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowOffscreenBufferingPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowOffscreenBufferingPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowOffscreenBufferingPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowOffscreenBufferingPropertyInfo = Bool
+    type AttrLabel DOMDOMWindowOffscreenBufferingPropertyInfo = "DOMDOMWindow::offscreen-buffering"
+    attrGet _ = getDOMDOMWindowOffscreenBuffering
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "opener"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDOMWindow"
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowOpener :: (MonadIO m, DOMDOMWindowK o) => o -> m DOMDOMWindow
+getDOMDOMWindowOpener obj = liftIO $ getObjectPropertyObject obj "opener" DOMDOMWindow
+
+data DOMDOMWindowOpenerPropertyInfo
+instance AttrInfo DOMDOMWindowOpenerPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowOpenerPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowOpenerPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowOpenerPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowOpenerPropertyInfo = DOMDOMWindow
+    type AttrLabel DOMDOMWindowOpenerPropertyInfo = "DOMDOMWindow::opener"
+    attrGet _ = getDOMDOMWindowOpener
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "outer-height"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowOuterHeight :: (MonadIO m, DOMDOMWindowK o) => o -> m Int64
+getDOMDOMWindowOuterHeight obj = liftIO $ getObjectPropertyInt64 obj "outer-height"
+
+data DOMDOMWindowOuterHeightPropertyInfo
+instance AttrInfo DOMDOMWindowOuterHeightPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowOuterHeightPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowOuterHeightPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowOuterHeightPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowOuterHeightPropertyInfo = Int64
+    type AttrLabel DOMDOMWindowOuterHeightPropertyInfo = "DOMDOMWindow::outer-height"
+    attrGet _ = getDOMDOMWindowOuterHeight
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "outer-width"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowOuterWidth :: (MonadIO m, DOMDOMWindowK o) => o -> m Int64
+getDOMDOMWindowOuterWidth obj = liftIO $ getObjectPropertyInt64 obj "outer-width"
+
+data DOMDOMWindowOuterWidthPropertyInfo
+instance AttrInfo DOMDOMWindowOuterWidthPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowOuterWidthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowOuterWidthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowOuterWidthPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowOuterWidthPropertyInfo = Int64
+    type AttrLabel DOMDOMWindowOuterWidthPropertyInfo = "DOMDOMWindow::outer-width"
+    attrGet _ = getDOMDOMWindowOuterWidth
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "page-x-offset"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowPageXOffset :: (MonadIO m, DOMDOMWindowK o) => o -> m Int64
+getDOMDOMWindowPageXOffset obj = liftIO $ getObjectPropertyInt64 obj "page-x-offset"
+
+data DOMDOMWindowPageXOffsetPropertyInfo
+instance AttrInfo DOMDOMWindowPageXOffsetPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowPageXOffsetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowPageXOffsetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowPageXOffsetPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowPageXOffsetPropertyInfo = Int64
+    type AttrLabel DOMDOMWindowPageXOffsetPropertyInfo = "DOMDOMWindow::page-x-offset"
+    attrGet _ = getDOMDOMWindowPageXOffset
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "page-y-offset"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowPageYOffset :: (MonadIO m, DOMDOMWindowK o) => o -> m Int64
+getDOMDOMWindowPageYOffset obj = liftIO $ getObjectPropertyInt64 obj "page-y-offset"
+
+data DOMDOMWindowPageYOffsetPropertyInfo
+instance AttrInfo DOMDOMWindowPageYOffsetPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowPageYOffsetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowPageYOffsetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowPageYOffsetPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowPageYOffsetPropertyInfo = Int64
+    type AttrLabel DOMDOMWindowPageYOffsetPropertyInfo = "DOMDOMWindow::page-y-offset"
+    attrGet _ = getDOMDOMWindowPageYOffset
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "parent"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDOMWindow"
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowParent :: (MonadIO m, DOMDOMWindowK o) => o -> m DOMDOMWindow
+getDOMDOMWindowParent obj = liftIO $ getObjectPropertyObject obj "parent" DOMDOMWindow
+
+data DOMDOMWindowParentPropertyInfo
+instance AttrInfo DOMDOMWindowParentPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowParentPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowParentPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowParentPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowParentPropertyInfo = DOMDOMWindow
+    type AttrLabel DOMDOMWindowParentPropertyInfo = "DOMDOMWindow::parent"
+    attrGet _ = getDOMDOMWindowParent
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "screen-left"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowScreenLeft :: (MonadIO m, DOMDOMWindowK o) => o -> m Int64
+getDOMDOMWindowScreenLeft obj = liftIO $ getObjectPropertyInt64 obj "screen-left"
+
+data DOMDOMWindowScreenLeftPropertyInfo
+instance AttrInfo DOMDOMWindowScreenLeftPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowScreenLeftPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowScreenLeftPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowScreenLeftPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowScreenLeftPropertyInfo = Int64
+    type AttrLabel DOMDOMWindowScreenLeftPropertyInfo = "DOMDOMWindow::screen-left"
+    attrGet _ = getDOMDOMWindowScreenLeft
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "screen-top"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowScreenTop :: (MonadIO m, DOMDOMWindowK o) => o -> m Int64
+getDOMDOMWindowScreenTop obj = liftIO $ getObjectPropertyInt64 obj "screen-top"
+
+data DOMDOMWindowScreenTopPropertyInfo
+instance AttrInfo DOMDOMWindowScreenTopPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowScreenTopPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowScreenTopPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowScreenTopPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowScreenTopPropertyInfo = Int64
+    type AttrLabel DOMDOMWindowScreenTopPropertyInfo = "DOMDOMWindow::screen-top"
+    attrGet _ = getDOMDOMWindowScreenTop
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "screen-x"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowScreenX :: (MonadIO m, DOMDOMWindowK o) => o -> m Int64
+getDOMDOMWindowScreenX obj = liftIO $ getObjectPropertyInt64 obj "screen-x"
+
+data DOMDOMWindowScreenXPropertyInfo
+instance AttrInfo DOMDOMWindowScreenXPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowScreenXPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowScreenXPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowScreenXPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowScreenXPropertyInfo = Int64
+    type AttrLabel DOMDOMWindowScreenXPropertyInfo = "DOMDOMWindow::screen-x"
+    attrGet _ = getDOMDOMWindowScreenX
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "screen-y"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowScreenY :: (MonadIO m, DOMDOMWindowK o) => o -> m Int64
+getDOMDOMWindowScreenY obj = liftIO $ getObjectPropertyInt64 obj "screen-y"
+
+data DOMDOMWindowScreenYPropertyInfo
+instance AttrInfo DOMDOMWindowScreenYPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowScreenYPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowScreenYPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowScreenYPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowScreenYPropertyInfo = Int64
+    type AttrLabel DOMDOMWindowScreenYPropertyInfo = "DOMDOMWindow::screen-y"
+    attrGet _ = getDOMDOMWindowScreenY
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "scroll-x"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowScrollX :: (MonadIO m, DOMDOMWindowK o) => o -> m Int64
+getDOMDOMWindowScrollX obj = liftIO $ getObjectPropertyInt64 obj "scroll-x"
+
+data DOMDOMWindowScrollXPropertyInfo
+instance AttrInfo DOMDOMWindowScrollXPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowScrollXPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowScrollXPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowScrollXPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowScrollXPropertyInfo = Int64
+    type AttrLabel DOMDOMWindowScrollXPropertyInfo = "DOMDOMWindow::scroll-x"
+    attrGet _ = getDOMDOMWindowScrollX
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "scroll-y"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowScrollY :: (MonadIO m, DOMDOMWindowK o) => o -> m Int64
+getDOMDOMWindowScrollY obj = liftIO $ getObjectPropertyInt64 obj "scroll-y"
+
+data DOMDOMWindowScrollYPropertyInfo
+instance AttrInfo DOMDOMWindowScrollYPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowScrollYPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowScrollYPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowScrollYPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowScrollYPropertyInfo = Int64
+    type AttrLabel DOMDOMWindowScrollYPropertyInfo = "DOMDOMWindow::scroll-y"
+    attrGet _ = getDOMDOMWindowScrollY
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "self"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDOMWindow"
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowSelf :: (MonadIO m, DOMDOMWindowK o) => o -> m DOMDOMWindow
+getDOMDOMWindowSelf obj = liftIO $ getObjectPropertyObject obj "self" DOMDOMWindow
+
+data DOMDOMWindowSelfPropertyInfo
+instance AttrInfo DOMDOMWindowSelfPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowSelfPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowSelfPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowSelfPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowSelfPropertyInfo = DOMDOMWindow
+    type AttrLabel DOMDOMWindowSelfPropertyInfo = "DOMDOMWindow::self"
+    attrGet _ = getDOMDOMWindowSelf
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "status"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMDOMWindowStatus :: (MonadIO m, DOMDOMWindowK o) => o -> m T.Text
+getDOMDOMWindowStatus obj = liftIO $ getObjectPropertyString obj "status"
+
+setDOMDOMWindowStatus :: (MonadIO m, DOMDOMWindowK o) => o -> T.Text -> m ()
+setDOMDOMWindowStatus obj val = liftIO $ setObjectPropertyString obj "status" val
+
+constructDOMDOMWindowStatus :: T.Text -> IO ([Char], GValue)
+constructDOMDOMWindowStatus val = constructObjectPropertyString "status" val
+
+data DOMDOMWindowStatusPropertyInfo
+instance AttrInfo DOMDOMWindowStatusPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowStatusPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowStatusPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMDOMWindowStatusPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowStatusPropertyInfo = T.Text
+    type AttrLabel DOMDOMWindowStatusPropertyInfo = "DOMDOMWindow::status"
+    attrGet _ = getDOMDOMWindowStatus
+    attrSet _ = setDOMDOMWindowStatus
+    attrConstruct _ = constructDOMDOMWindowStatus
+
+-- VVV Prop "top"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDOMWindow"
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowTop :: (MonadIO m, DOMDOMWindowK o) => o -> m DOMDOMWindow
+getDOMDOMWindowTop obj = liftIO $ getObjectPropertyObject obj "top" DOMDOMWindow
+
+data DOMDOMWindowTopPropertyInfo
+instance AttrInfo DOMDOMWindowTopPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowTopPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowTopPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowTopPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowTopPropertyInfo = DOMDOMWindow
+    type AttrLabel DOMDOMWindowTopPropertyInfo = "DOMDOMWindow::top"
+    attrGet _ = getDOMDOMWindowTop
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "window"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDOMWindow"
+   -- Flags: [PropertyReadable]
+
+getDOMDOMWindowWindow :: (MonadIO m, DOMDOMWindowK o) => o -> m DOMDOMWindow
+getDOMDOMWindowWindow obj = liftIO $ getObjectPropertyObject obj "window" DOMDOMWindow
+
+data DOMDOMWindowWindowPropertyInfo
+instance AttrInfo DOMDOMWindowWindowPropertyInfo where
+    type AttrAllowedOps DOMDOMWindowWindowPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDOMWindowWindowPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDOMWindowWindowPropertyInfo = DOMDOMWindowK
+    type AttrGetType DOMDOMWindowWindowPropertyInfo = DOMDOMWindow
+    type AttrLabel DOMDOMWindowWindowPropertyInfo = "DOMDOMWindow::window"
+    attrGet _ = getDOMDOMWindowWindow
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMDOMWindow = DOMDOMWindowAttributeList
+type DOMDOMWindowAttributeList = ('[ '("closed", DOMDOMWindowClosedPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("default-status", DOMDOMWindowDefaultStatusPropertyInfo), '("device-pixel-ratio", DOMDOMWindowDevicePixelRatioPropertyInfo), '("document", DOMDOMWindowDocumentPropertyInfo), '("frame-element", DOMDOMWindowFrameElementPropertyInfo), '("frames", DOMDOMWindowFramesPropertyInfo), '("inner-height", DOMDOMWindowInnerHeightPropertyInfo), '("inner-width", DOMDOMWindowInnerWidthPropertyInfo), '("length", DOMDOMWindowLengthPropertyInfo), '("name", DOMDOMWindowNamePropertyInfo), '("offscreen-buffering", DOMDOMWindowOffscreenBufferingPropertyInfo), '("opener", DOMDOMWindowOpenerPropertyInfo), '("outer-height", DOMDOMWindowOuterHeightPropertyInfo), '("outer-width", DOMDOMWindowOuterWidthPropertyInfo), '("page-x-offset", DOMDOMWindowPageXOffsetPropertyInfo), '("page-y-offset", DOMDOMWindowPageYOffsetPropertyInfo), '("parent", DOMDOMWindowParentPropertyInfo), '("screen-left", DOMDOMWindowScreenLeftPropertyInfo), '("screen-top", DOMDOMWindowScreenTopPropertyInfo), '("screen-x", DOMDOMWindowScreenXPropertyInfo), '("screen-y", DOMDOMWindowScreenYPropertyInfo), '("scroll-x", DOMDOMWindowScrollXPropertyInfo), '("scroll-y", DOMDOMWindowScrollYPropertyInfo), '("self", DOMDOMWindowSelfPropertyInfo), '("status", DOMDOMWindowStatusPropertyInfo), '("top", DOMDOMWindowTopPropertyInfo), '("window", DOMDOMWindowWindowPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMDOMWindow = DOMDOMWindowSignalList
+type DOMDOMWindowSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMDOMWindow::webkit_message_handlers_post_message
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDOMWindow", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "handler", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "message", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDOMWindow", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "handler", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "message", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_dom_window_webkit_message_handlers_post_message" webkit_dom_dom_window_webkit_message_handlers_post_message :: 
+    Ptr DOMDOMWindow ->                     -- _obj : TInterface "WebKit2WebExtension" "DOMDOMWindow"
+    CString ->                              -- handler : TBasicType TUTF8
+    CString ->                              -- message : TBasicType TUTF8
+    IO CInt
+
+
+dOMDOMWindowWebkitMessageHandlersPostMessage ::
+    (MonadIO m, DOMDOMWindowK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- handler
+    T.Text ->                               -- message
+    m Bool
+dOMDOMWindowWebkitMessageHandlersPostMessage _obj handler message = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    handler' <- textToCString handler
+    message' <- textToCString message
+    result <- webkit_dom_dom_window_webkit_message_handlers_post_message _obj' handler' message'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    freeMem handler'
+    freeMem message'
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMDOMWindow.hs-boot b/GI/WebKit2WebExtension/Objects/DOMDOMWindow.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMDOMWindow.hs-boot
@@ -0,0 +1,40 @@
+module GI.WebKit2WebExtension.Objects.DOMDOMWindow where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMDOMWindow = DOMDOMWindow (ForeignPtr DOMDOMWindow)
+instance GObject DOMDOMWindow where
+class GObject o => DOMDOMWindowK o
+instance (GObject o, IsDescendantOf DOMDOMWindow o) => DOMDOMWindowK o
+data DOMDOMWindowClosedPropertyInfo
+data DOMDOMWindowDefaultStatusPropertyInfo
+data DOMDOMWindowDevicePixelRatioPropertyInfo
+data DOMDOMWindowDocumentPropertyInfo
+data DOMDOMWindowFrameElementPropertyInfo
+data DOMDOMWindowFramesPropertyInfo
+data DOMDOMWindowInnerHeightPropertyInfo
+data DOMDOMWindowInnerWidthPropertyInfo
+data DOMDOMWindowLengthPropertyInfo
+data DOMDOMWindowNamePropertyInfo
+data DOMDOMWindowOffscreenBufferingPropertyInfo
+data DOMDOMWindowOpenerPropertyInfo
+data DOMDOMWindowOuterHeightPropertyInfo
+data DOMDOMWindowOuterWidthPropertyInfo
+data DOMDOMWindowPageXOffsetPropertyInfo
+data DOMDOMWindowPageYOffsetPropertyInfo
+data DOMDOMWindowParentPropertyInfo
+data DOMDOMWindowScreenLeftPropertyInfo
+data DOMDOMWindowScreenTopPropertyInfo
+data DOMDOMWindowScreenXPropertyInfo
+data DOMDOMWindowScreenYPropertyInfo
+data DOMDOMWindowScrollXPropertyInfo
+data DOMDOMWindowScrollYPropertyInfo
+data DOMDOMWindowSelfPropertyInfo
+data DOMDOMWindowStatusPropertyInfo
+data DOMDOMWindowTopPropertyInfo
+data DOMDOMWindowWindowPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMDocument.hs b/GI/WebKit2WebExtension/Objects/DOMDocument.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMDocument.hs
@@ -0,0 +1,3665 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMDocument
+    ( 
+
+-- * Exported types
+    DOMDocument(..)                         ,
+    DOMDocumentK                            ,
+    toDOMDocument                           ,
+    noDOMDocument                           ,
+
+
+ -- * Methods
+-- ** dOMDocumentAdoptNode
+    dOMDocumentAdoptNode                    ,
+
+
+-- ** dOMDocumentCreateAttribute
+    dOMDocumentCreateAttribute              ,
+
+
+-- ** dOMDocumentCreateAttributeNs
+    dOMDocumentCreateAttributeNs            ,
+
+
+-- ** dOMDocumentCreateCdataSection
+    dOMDocumentCreateCdataSection           ,
+
+
+-- ** dOMDocumentCreateComment
+    dOMDocumentCreateComment                ,
+
+
+-- ** dOMDocumentCreateCssStyleDeclaration
+    dOMDocumentCreateCssStyleDeclaration    ,
+
+
+-- ** dOMDocumentCreateDocumentFragment
+    dOMDocumentCreateDocumentFragment       ,
+
+
+-- ** dOMDocumentCreateElement
+    dOMDocumentCreateElement                ,
+
+
+-- ** dOMDocumentCreateElementNs
+    dOMDocumentCreateElementNs              ,
+
+
+-- ** dOMDocumentCreateEntityReference
+    dOMDocumentCreateEntityReference        ,
+
+
+-- ** dOMDocumentCreateEvent
+    dOMDocumentCreateEvent                  ,
+
+
+-- ** dOMDocumentCreateExpression
+    dOMDocumentCreateExpression             ,
+
+
+-- ** dOMDocumentCreateNodeIterator
+    dOMDocumentCreateNodeIterator           ,
+
+
+-- ** dOMDocumentCreateNsResolver
+    dOMDocumentCreateNsResolver             ,
+
+
+-- ** dOMDocumentCreateProcessingInstruction
+    dOMDocumentCreateProcessingInstruction  ,
+
+
+-- ** dOMDocumentCreateRange
+    dOMDocumentCreateRange                  ,
+
+
+-- ** dOMDocumentCreateTextNode
+    dOMDocumentCreateTextNode               ,
+
+
+-- ** dOMDocumentCreateTreeWalker
+    dOMDocumentCreateTreeWalker             ,
+
+
+-- ** dOMDocumentElementFromPoint
+    dOMDocumentElementFromPoint             ,
+
+
+-- ** dOMDocumentEvaluate
+    dOMDocumentEvaluate                     ,
+
+
+-- ** dOMDocumentExecCommand
+    dOMDocumentExecCommand                  ,
+
+
+-- ** dOMDocumentGetActiveElement
+    dOMDocumentGetActiveElement             ,
+
+
+-- ** dOMDocumentGetAnchors
+    dOMDocumentGetAnchors                   ,
+
+
+-- ** dOMDocumentGetApplets
+    dOMDocumentGetApplets                   ,
+
+
+-- ** dOMDocumentGetBody
+    dOMDocumentGetBody                      ,
+
+
+-- ** dOMDocumentGetCharacterSet
+    dOMDocumentGetCharacterSet              ,
+
+
+-- ** dOMDocumentGetCharset
+    dOMDocumentGetCharset                   ,
+
+
+-- ** dOMDocumentGetCookie
+    dOMDocumentGetCookie                    ,
+
+
+-- ** dOMDocumentGetDefaultCharset
+    dOMDocumentGetDefaultCharset            ,
+
+
+-- ** dOMDocumentGetDefaultView
+    dOMDocumentGetDefaultView               ,
+
+
+-- ** dOMDocumentGetDoctype
+    dOMDocumentGetDoctype                   ,
+
+
+-- ** dOMDocumentGetDocumentElement
+    dOMDocumentGetDocumentElement           ,
+
+
+-- ** dOMDocumentGetDocumentUri
+    dOMDocumentGetDocumentUri               ,
+
+
+-- ** dOMDocumentGetDomain
+    dOMDocumentGetDomain                    ,
+
+
+-- ** dOMDocumentGetElementById
+    dOMDocumentGetElementById               ,
+
+
+-- ** dOMDocumentGetElementsByClassName
+    dOMDocumentGetElementsByClassName       ,
+
+
+-- ** dOMDocumentGetElementsByName
+    dOMDocumentGetElementsByName            ,
+
+
+-- ** dOMDocumentGetElementsByTagName
+    dOMDocumentGetElementsByTagName         ,
+
+
+-- ** dOMDocumentGetElementsByTagNameNs
+    dOMDocumentGetElementsByTagNameNs       ,
+
+
+-- ** dOMDocumentGetForms
+    dOMDocumentGetForms                     ,
+
+
+-- ** dOMDocumentGetHead
+    dOMDocumentGetHead                      ,
+
+
+-- ** dOMDocumentGetImages
+    dOMDocumentGetImages                    ,
+
+
+-- ** dOMDocumentGetImplementation
+    dOMDocumentGetImplementation            ,
+
+
+-- ** dOMDocumentGetInputEncoding
+    dOMDocumentGetInputEncoding             ,
+
+
+-- ** dOMDocumentGetLastModified
+    dOMDocumentGetLastModified              ,
+
+
+-- ** dOMDocumentGetLinks
+    dOMDocumentGetLinks                     ,
+
+
+-- ** dOMDocumentGetOverrideStyle
+    dOMDocumentGetOverrideStyle             ,
+
+
+-- ** dOMDocumentGetPreferredStylesheetSet
+    dOMDocumentGetPreferredStylesheetSet    ,
+
+
+-- ** dOMDocumentGetReadyState
+    dOMDocumentGetReadyState                ,
+
+
+-- ** dOMDocumentGetReferrer
+    dOMDocumentGetReferrer                  ,
+
+
+-- ** dOMDocumentGetSelectedStylesheetSet
+    dOMDocumentGetSelectedStylesheetSet     ,
+
+
+-- ** dOMDocumentGetStyleSheets
+    dOMDocumentGetStyleSheets               ,
+
+
+-- ** dOMDocumentGetTitle
+    dOMDocumentGetTitle                     ,
+
+
+-- ** dOMDocumentGetUrl
+    dOMDocumentGetUrl                       ,
+
+
+-- ** dOMDocumentGetXmlEncoding
+    dOMDocumentGetXmlEncoding               ,
+
+
+-- ** dOMDocumentGetXmlStandalone
+    dOMDocumentGetXmlStandalone             ,
+
+
+-- ** dOMDocumentGetXmlVersion
+    dOMDocumentGetXmlVersion                ,
+
+
+-- ** dOMDocumentHasFocus
+    dOMDocumentHasFocus                     ,
+
+
+-- ** dOMDocumentImportNode
+    dOMDocumentImportNode                   ,
+
+
+-- ** dOMDocumentQueryCommandEnabled
+    dOMDocumentQueryCommandEnabled          ,
+
+
+-- ** dOMDocumentQueryCommandIndeterm
+    dOMDocumentQueryCommandIndeterm         ,
+
+
+-- ** dOMDocumentQueryCommandState
+    dOMDocumentQueryCommandState            ,
+
+
+-- ** dOMDocumentQueryCommandSupported
+    dOMDocumentQueryCommandSupported        ,
+
+
+-- ** dOMDocumentQueryCommandValue
+    dOMDocumentQueryCommandValue            ,
+
+
+-- ** dOMDocumentQuerySelector
+    dOMDocumentQuerySelector                ,
+
+
+-- ** dOMDocumentQuerySelectorAll
+    dOMDocumentQuerySelectorAll             ,
+
+
+-- ** dOMDocumentSetBody
+    dOMDocumentSetBody                      ,
+
+
+-- ** dOMDocumentSetCharset
+    dOMDocumentSetCharset                   ,
+
+
+-- ** dOMDocumentSetCookie
+    dOMDocumentSetCookie                    ,
+
+
+-- ** dOMDocumentSetDocumentUri
+    dOMDocumentSetDocumentUri               ,
+
+
+-- ** dOMDocumentSetSelectedStylesheetSet
+    dOMDocumentSetSelectedStylesheetSet     ,
+
+
+-- ** dOMDocumentSetTitle
+    dOMDocumentSetTitle                     ,
+
+
+-- ** dOMDocumentSetXmlStandalone
+    dOMDocumentSetXmlStandalone             ,
+
+
+-- ** dOMDocumentSetXmlVersion
+    dOMDocumentSetXmlVersion                ,
+
+
+
+
+ -- * Properties
+-- ** ActiveElement
+    DOMDocumentActiveElementPropertyInfo    ,
+    getDOMDocumentActiveElement             ,
+
+
+-- ** Anchors
+    DOMDocumentAnchorsPropertyInfo          ,
+    getDOMDocumentAnchors                   ,
+
+
+-- ** Applets
+    DOMDocumentAppletsPropertyInfo          ,
+    getDOMDocumentApplets                   ,
+
+
+-- ** Body
+    DOMDocumentBodyPropertyInfo             ,
+    getDOMDocumentBody                      ,
+
+
+-- ** CharacterSet
+    DOMDocumentCharacterSetPropertyInfo     ,
+    getDOMDocumentCharacterSet              ,
+
+
+-- ** Charset
+    DOMDocumentCharsetPropertyInfo          ,
+    constructDOMDocumentCharset             ,
+    getDOMDocumentCharset                   ,
+    setDOMDocumentCharset                   ,
+
+
+-- ** CompatMode
+    DOMDocumentCompatModePropertyInfo       ,
+    getDOMDocumentCompatMode                ,
+
+
+-- ** ContentType
+    DOMDocumentContentTypePropertyInfo      ,
+    getDOMDocumentContentType               ,
+
+
+-- ** Cookie
+    DOMDocumentCookiePropertyInfo           ,
+    constructDOMDocumentCookie              ,
+    getDOMDocumentCookie                    ,
+    setDOMDocumentCookie                    ,
+
+
+-- ** CurrentScript
+    DOMDocumentCurrentScriptPropertyInfo    ,
+    getDOMDocumentCurrentScript             ,
+
+
+-- ** DefaultCharset
+    DOMDocumentDefaultCharsetPropertyInfo   ,
+    getDOMDocumentDefaultCharset            ,
+
+
+-- ** DefaultView
+    DOMDocumentDefaultViewPropertyInfo      ,
+    getDOMDocumentDefaultView               ,
+
+
+-- ** Doctype
+    DOMDocumentDoctypePropertyInfo          ,
+    getDOMDocumentDoctype                   ,
+
+
+-- ** DocumentElement
+    DOMDocumentDocumentElementPropertyInfo  ,
+    getDOMDocumentDocumentElement           ,
+
+
+-- ** DocumentUri
+    DOMDocumentDocumentUriPropertyInfo      ,
+    constructDOMDocumentDocumentUri         ,
+    getDOMDocumentDocumentUri               ,
+    setDOMDocumentDocumentUri               ,
+
+
+-- ** Domain
+    DOMDocumentDomainPropertyInfo           ,
+    getDOMDocumentDomain                    ,
+
+
+-- ** Forms
+    DOMDocumentFormsPropertyInfo            ,
+    getDOMDocumentForms                     ,
+
+
+-- ** Head
+    DOMDocumentHeadPropertyInfo             ,
+    getDOMDocumentHead                      ,
+
+
+-- ** Hidden
+    DOMDocumentHiddenPropertyInfo           ,
+    getDOMDocumentHidden                    ,
+
+
+-- ** Images
+    DOMDocumentImagesPropertyInfo           ,
+    getDOMDocumentImages                    ,
+
+
+-- ** Implementation
+    DOMDocumentImplementationPropertyInfo   ,
+    getDOMDocumentImplementation            ,
+
+
+-- ** InputEncoding
+    DOMDocumentInputEncodingPropertyInfo    ,
+    getDOMDocumentInputEncoding             ,
+
+
+-- ** LastModified
+    DOMDocumentLastModifiedPropertyInfo     ,
+    getDOMDocumentLastModified              ,
+
+
+-- ** Links
+    DOMDocumentLinksPropertyInfo            ,
+    getDOMDocumentLinks                     ,
+
+
+-- ** Origin
+    DOMDocumentOriginPropertyInfo           ,
+    getDOMDocumentOrigin                    ,
+
+
+-- ** PointerLockElement
+    DOMDocumentPointerLockElementPropertyInfo,
+    getDOMDocumentPointerLockElement        ,
+
+
+-- ** PreferredStylesheetSet
+    DOMDocumentPreferredStylesheetSetPropertyInfo,
+    getDOMDocumentPreferredStylesheetSet    ,
+
+
+-- ** ReadyState
+    DOMDocumentReadyStatePropertyInfo       ,
+    getDOMDocumentReadyState                ,
+
+
+-- ** Referrer
+    DOMDocumentReferrerPropertyInfo         ,
+    getDOMDocumentReferrer                  ,
+
+
+-- ** SelectedStylesheetSet
+    DOMDocumentSelectedStylesheetSetPropertyInfo,
+    constructDOMDocumentSelectedStylesheetSet,
+    getDOMDocumentSelectedStylesheetSet     ,
+    setDOMDocumentSelectedStylesheetSet     ,
+
+
+-- ** StyleSheets
+    DOMDocumentStyleSheetsPropertyInfo      ,
+    getDOMDocumentStyleSheets               ,
+
+
+-- ** Title
+    DOMDocumentTitlePropertyInfo            ,
+    constructDOMDocumentTitle               ,
+    getDOMDocumentTitle                     ,
+    setDOMDocumentTitle                     ,
+
+
+-- ** Url
+    DOMDocumentUrlPropertyInfo              ,
+    getDOMDocumentUrl                       ,
+
+
+-- ** VisibilityState
+    DOMDocumentVisibilityStatePropertyInfo  ,
+    getDOMDocumentVisibilityState           ,
+
+
+-- ** WebkitCurrentFullScreenElement
+    DOMDocumentWebkitCurrentFullScreenElementPropertyInfo,
+    getDOMDocumentWebkitCurrentFullScreenElement,
+
+
+-- ** WebkitFullScreenKeyboardInputAllowed
+    DOMDocumentWebkitFullScreenKeyboardInputAllowedPropertyInfo,
+    getDOMDocumentWebkitFullScreenKeyboardInputAllowed,
+
+
+-- ** WebkitFullscreenElement
+    DOMDocumentWebkitFullscreenElementPropertyInfo,
+    getDOMDocumentWebkitFullscreenElement   ,
+
+
+-- ** WebkitFullscreenEnabled
+    DOMDocumentWebkitFullscreenEnabledPropertyInfo,
+    getDOMDocumentWebkitFullscreenEnabled   ,
+
+
+-- ** WebkitIsFullScreen
+    DOMDocumentWebkitIsFullScreenPropertyInfo,
+    getDOMDocumentWebkitIsFullScreen        ,
+
+
+-- ** XmlEncoding
+    DOMDocumentXmlEncodingPropertyInfo      ,
+    getDOMDocumentXmlEncoding               ,
+
+
+-- ** XmlStandalone
+    DOMDocumentXmlStandalonePropertyInfo    ,
+    constructDOMDocumentXmlStandalone       ,
+    getDOMDocumentXmlStandalone             ,
+    setDOMDocumentXmlStandalone             ,
+
+
+-- ** XmlVersion
+    DOMDocumentXmlVersionPropertyInfo       ,
+    constructDOMDocumentXmlVersion          ,
+    getDOMDocumentXmlVersion                ,
+    setDOMDocumentXmlVersion                ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMDocument = DOMDocument (ForeignPtr DOMDocument)
+foreign import ccall "webkit_dom_document_get_type"
+    c_webkit_dom_document_get_type :: IO GType
+
+type instance ParentTypes DOMDocument = DOMDocumentParentTypes
+type DOMDocumentParentTypes = '[DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMDocument where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_document_get_type
+    
+
+class GObject o => DOMDocumentK o
+instance (GObject o, IsDescendantOf DOMDocument o) => DOMDocumentK o
+
+toDOMDocument :: DOMDocumentK o => o -> IO DOMDocument
+toDOMDocument = unsafeCastTo DOMDocument
+
+noDOMDocument :: Maybe DOMDocument
+noDOMDocument = Nothing
+
+-- VVV Prop "active-element"
+   -- Type: TInterface "WebKit2WebExtension" "DOMElement"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentActiveElement :: (MonadIO m, DOMDocumentK o) => o -> m DOMElement
+getDOMDocumentActiveElement obj = liftIO $ getObjectPropertyObject obj "active-element" DOMElement
+
+data DOMDocumentActiveElementPropertyInfo
+instance AttrInfo DOMDocumentActiveElementPropertyInfo where
+    type AttrAllowedOps DOMDocumentActiveElementPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentActiveElementPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentActiveElementPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentActiveElementPropertyInfo = DOMElement
+    type AttrLabel DOMDocumentActiveElementPropertyInfo = "DOMDocument::active-element"
+    attrGet _ = getDOMDocumentActiveElement
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "anchors"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentAnchors :: (MonadIO m, DOMDocumentK o) => o -> m DOMHTMLCollection
+getDOMDocumentAnchors obj = liftIO $ getObjectPropertyObject obj "anchors" DOMHTMLCollection
+
+data DOMDocumentAnchorsPropertyInfo
+instance AttrInfo DOMDocumentAnchorsPropertyInfo where
+    type AttrAllowedOps DOMDocumentAnchorsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentAnchorsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentAnchorsPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentAnchorsPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMDocumentAnchorsPropertyInfo = "DOMDocument::anchors"
+    attrGet _ = getDOMDocumentAnchors
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "applets"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentApplets :: (MonadIO m, DOMDocumentK o) => o -> m DOMHTMLCollection
+getDOMDocumentApplets obj = liftIO $ getObjectPropertyObject obj "applets" DOMHTMLCollection
+
+data DOMDocumentAppletsPropertyInfo
+instance AttrInfo DOMDocumentAppletsPropertyInfo where
+    type AttrAllowedOps DOMDocumentAppletsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentAppletsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentAppletsPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentAppletsPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMDocumentAppletsPropertyInfo = "DOMDocument::applets"
+    attrGet _ = getDOMDocumentApplets
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "body"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLElement"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentBody :: (MonadIO m, DOMDocumentK o) => o -> m DOMHTMLElement
+getDOMDocumentBody obj = liftIO $ getObjectPropertyObject obj "body" DOMHTMLElement
+
+data DOMDocumentBodyPropertyInfo
+instance AttrInfo DOMDocumentBodyPropertyInfo where
+    type AttrAllowedOps DOMDocumentBodyPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentBodyPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentBodyPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentBodyPropertyInfo = DOMHTMLElement
+    type AttrLabel DOMDocumentBodyPropertyInfo = "DOMDocument::body"
+    attrGet _ = getDOMDocumentBody
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "character-set"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentCharacterSet :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentCharacterSet obj = liftIO $ getObjectPropertyString obj "character-set"
+
+data DOMDocumentCharacterSetPropertyInfo
+instance AttrInfo DOMDocumentCharacterSetPropertyInfo where
+    type AttrAllowedOps DOMDocumentCharacterSetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentCharacterSetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentCharacterSetPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentCharacterSetPropertyInfo = T.Text
+    type AttrLabel DOMDocumentCharacterSetPropertyInfo = "DOMDocument::character-set"
+    attrGet _ = getDOMDocumentCharacterSet
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "charset"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMDocumentCharset :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentCharset obj = liftIO $ getObjectPropertyString obj "charset"
+
+setDOMDocumentCharset :: (MonadIO m, DOMDocumentK o) => o -> T.Text -> m ()
+setDOMDocumentCharset obj val = liftIO $ setObjectPropertyString obj "charset" val
+
+constructDOMDocumentCharset :: T.Text -> IO ([Char], GValue)
+constructDOMDocumentCharset val = constructObjectPropertyString "charset" val
+
+data DOMDocumentCharsetPropertyInfo
+instance AttrInfo DOMDocumentCharsetPropertyInfo where
+    type AttrAllowedOps DOMDocumentCharsetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentCharsetPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMDocumentCharsetPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentCharsetPropertyInfo = T.Text
+    type AttrLabel DOMDocumentCharsetPropertyInfo = "DOMDocument::charset"
+    attrGet _ = getDOMDocumentCharset
+    attrSet _ = setDOMDocumentCharset
+    attrConstruct _ = constructDOMDocumentCharset
+
+-- VVV Prop "compat-mode"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentCompatMode :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentCompatMode obj = liftIO $ getObjectPropertyString obj "compat-mode"
+
+data DOMDocumentCompatModePropertyInfo
+instance AttrInfo DOMDocumentCompatModePropertyInfo where
+    type AttrAllowedOps DOMDocumentCompatModePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentCompatModePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentCompatModePropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentCompatModePropertyInfo = T.Text
+    type AttrLabel DOMDocumentCompatModePropertyInfo = "DOMDocument::compat-mode"
+    attrGet _ = getDOMDocumentCompatMode
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "content-type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentContentType :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentContentType obj = liftIO $ getObjectPropertyString obj "content-type"
+
+data DOMDocumentContentTypePropertyInfo
+instance AttrInfo DOMDocumentContentTypePropertyInfo where
+    type AttrAllowedOps DOMDocumentContentTypePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentContentTypePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentContentTypePropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentContentTypePropertyInfo = T.Text
+    type AttrLabel DOMDocumentContentTypePropertyInfo = "DOMDocument::content-type"
+    attrGet _ = getDOMDocumentContentType
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "cookie"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMDocumentCookie :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentCookie obj = liftIO $ getObjectPropertyString obj "cookie"
+
+setDOMDocumentCookie :: (MonadIO m, DOMDocumentK o) => o -> T.Text -> m ()
+setDOMDocumentCookie obj val = liftIO $ setObjectPropertyString obj "cookie" val
+
+constructDOMDocumentCookie :: T.Text -> IO ([Char], GValue)
+constructDOMDocumentCookie val = constructObjectPropertyString "cookie" val
+
+data DOMDocumentCookiePropertyInfo
+instance AttrInfo DOMDocumentCookiePropertyInfo where
+    type AttrAllowedOps DOMDocumentCookiePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentCookiePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMDocumentCookiePropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentCookiePropertyInfo = T.Text
+    type AttrLabel DOMDocumentCookiePropertyInfo = "DOMDocument::cookie"
+    attrGet _ = getDOMDocumentCookie
+    attrSet _ = setDOMDocumentCookie
+    attrConstruct _ = constructDOMDocumentCookie
+
+-- VVV Prop "current-script"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLScriptElement"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentCurrentScript :: (MonadIO m, DOMDocumentK o) => o -> m DOMHTMLScriptElement
+getDOMDocumentCurrentScript obj = liftIO $ getObjectPropertyObject obj "current-script" DOMHTMLScriptElement
+
+data DOMDocumentCurrentScriptPropertyInfo
+instance AttrInfo DOMDocumentCurrentScriptPropertyInfo where
+    type AttrAllowedOps DOMDocumentCurrentScriptPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentCurrentScriptPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentCurrentScriptPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentCurrentScriptPropertyInfo = DOMHTMLScriptElement
+    type AttrLabel DOMDocumentCurrentScriptPropertyInfo = "DOMDocument::current-script"
+    attrGet _ = getDOMDocumentCurrentScript
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "default-charset"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentDefaultCharset :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentDefaultCharset obj = liftIO $ getObjectPropertyString obj "default-charset"
+
+data DOMDocumentDefaultCharsetPropertyInfo
+instance AttrInfo DOMDocumentDefaultCharsetPropertyInfo where
+    type AttrAllowedOps DOMDocumentDefaultCharsetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentDefaultCharsetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentDefaultCharsetPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentDefaultCharsetPropertyInfo = T.Text
+    type AttrLabel DOMDocumentDefaultCharsetPropertyInfo = "DOMDocument::default-charset"
+    attrGet _ = getDOMDocumentDefaultCharset
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "default-view"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDOMWindow"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentDefaultView :: (MonadIO m, DOMDocumentK o) => o -> m DOMDOMWindow
+getDOMDocumentDefaultView obj = liftIO $ getObjectPropertyObject obj "default-view" DOMDOMWindow
+
+data DOMDocumentDefaultViewPropertyInfo
+instance AttrInfo DOMDocumentDefaultViewPropertyInfo where
+    type AttrAllowedOps DOMDocumentDefaultViewPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentDefaultViewPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentDefaultViewPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentDefaultViewPropertyInfo = DOMDOMWindow
+    type AttrLabel DOMDocumentDefaultViewPropertyInfo = "DOMDocument::default-view"
+    attrGet _ = getDOMDocumentDefaultView
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "doctype"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDocumentType"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentDoctype :: (MonadIO m, DOMDocumentK o) => o -> m DOMDocumentType
+getDOMDocumentDoctype obj = liftIO $ getObjectPropertyObject obj "doctype" DOMDocumentType
+
+data DOMDocumentDoctypePropertyInfo
+instance AttrInfo DOMDocumentDoctypePropertyInfo where
+    type AttrAllowedOps DOMDocumentDoctypePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentDoctypePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentDoctypePropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentDoctypePropertyInfo = DOMDocumentType
+    type AttrLabel DOMDocumentDoctypePropertyInfo = "DOMDocument::doctype"
+    attrGet _ = getDOMDocumentDoctype
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "document-element"
+   -- Type: TInterface "WebKit2WebExtension" "DOMElement"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentDocumentElement :: (MonadIO m, DOMDocumentK o) => o -> m DOMElement
+getDOMDocumentDocumentElement obj = liftIO $ getObjectPropertyObject obj "document-element" DOMElement
+
+data DOMDocumentDocumentElementPropertyInfo
+instance AttrInfo DOMDocumentDocumentElementPropertyInfo where
+    type AttrAllowedOps DOMDocumentDocumentElementPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentDocumentElementPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentDocumentElementPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentDocumentElementPropertyInfo = DOMElement
+    type AttrLabel DOMDocumentDocumentElementPropertyInfo = "DOMDocument::document-element"
+    attrGet _ = getDOMDocumentDocumentElement
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "document-uri"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMDocumentDocumentUri :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentDocumentUri obj = liftIO $ getObjectPropertyString obj "document-uri"
+
+setDOMDocumentDocumentUri :: (MonadIO m, DOMDocumentK o) => o -> T.Text -> m ()
+setDOMDocumentDocumentUri obj val = liftIO $ setObjectPropertyString obj "document-uri" val
+
+constructDOMDocumentDocumentUri :: T.Text -> IO ([Char], GValue)
+constructDOMDocumentDocumentUri val = constructObjectPropertyString "document-uri" val
+
+data DOMDocumentDocumentUriPropertyInfo
+instance AttrInfo DOMDocumentDocumentUriPropertyInfo where
+    type AttrAllowedOps DOMDocumentDocumentUriPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentDocumentUriPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMDocumentDocumentUriPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentDocumentUriPropertyInfo = T.Text
+    type AttrLabel DOMDocumentDocumentUriPropertyInfo = "DOMDocument::document-uri"
+    attrGet _ = getDOMDocumentDocumentUri
+    attrSet _ = setDOMDocumentDocumentUri
+    attrConstruct _ = constructDOMDocumentDocumentUri
+
+-- VVV Prop "domain"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentDomain :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentDomain obj = liftIO $ getObjectPropertyString obj "domain"
+
+data DOMDocumentDomainPropertyInfo
+instance AttrInfo DOMDocumentDomainPropertyInfo where
+    type AttrAllowedOps DOMDocumentDomainPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentDomainPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentDomainPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentDomainPropertyInfo = T.Text
+    type AttrLabel DOMDocumentDomainPropertyInfo = "DOMDocument::domain"
+    attrGet _ = getDOMDocumentDomain
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "forms"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentForms :: (MonadIO m, DOMDocumentK o) => o -> m DOMHTMLCollection
+getDOMDocumentForms obj = liftIO $ getObjectPropertyObject obj "forms" DOMHTMLCollection
+
+data DOMDocumentFormsPropertyInfo
+instance AttrInfo DOMDocumentFormsPropertyInfo where
+    type AttrAllowedOps DOMDocumentFormsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentFormsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentFormsPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentFormsPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMDocumentFormsPropertyInfo = "DOMDocument::forms"
+    attrGet _ = getDOMDocumentForms
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "head"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLHeadElement"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentHead :: (MonadIO m, DOMDocumentK o) => o -> m DOMHTMLHeadElement
+getDOMDocumentHead obj = liftIO $ getObjectPropertyObject obj "head" DOMHTMLHeadElement
+
+data DOMDocumentHeadPropertyInfo
+instance AttrInfo DOMDocumentHeadPropertyInfo where
+    type AttrAllowedOps DOMDocumentHeadPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentHeadPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentHeadPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentHeadPropertyInfo = DOMHTMLHeadElement
+    type AttrLabel DOMDocumentHeadPropertyInfo = "DOMDocument::head"
+    attrGet _ = getDOMDocumentHead
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "hidden"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentHidden :: (MonadIO m, DOMDocumentK o) => o -> m Bool
+getDOMDocumentHidden obj = liftIO $ getObjectPropertyBool obj "hidden"
+
+data DOMDocumentHiddenPropertyInfo
+instance AttrInfo DOMDocumentHiddenPropertyInfo where
+    type AttrAllowedOps DOMDocumentHiddenPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentHiddenPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentHiddenPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentHiddenPropertyInfo = Bool
+    type AttrLabel DOMDocumentHiddenPropertyInfo = "DOMDocument::hidden"
+    attrGet _ = getDOMDocumentHidden
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "images"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentImages :: (MonadIO m, DOMDocumentK o) => o -> m DOMHTMLCollection
+getDOMDocumentImages obj = liftIO $ getObjectPropertyObject obj "images" DOMHTMLCollection
+
+data DOMDocumentImagesPropertyInfo
+instance AttrInfo DOMDocumentImagesPropertyInfo where
+    type AttrAllowedOps DOMDocumentImagesPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentImagesPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentImagesPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentImagesPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMDocumentImagesPropertyInfo = "DOMDocument::images"
+    attrGet _ = getDOMDocumentImages
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "implementation"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDOMImplementation"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentImplementation :: (MonadIO m, DOMDocumentK o) => o -> m DOMDOMImplementation
+getDOMDocumentImplementation obj = liftIO $ getObjectPropertyObject obj "implementation" DOMDOMImplementation
+
+data DOMDocumentImplementationPropertyInfo
+instance AttrInfo DOMDocumentImplementationPropertyInfo where
+    type AttrAllowedOps DOMDocumentImplementationPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentImplementationPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentImplementationPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentImplementationPropertyInfo = DOMDOMImplementation
+    type AttrLabel DOMDocumentImplementationPropertyInfo = "DOMDocument::implementation"
+    attrGet _ = getDOMDocumentImplementation
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "input-encoding"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentInputEncoding :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentInputEncoding obj = liftIO $ getObjectPropertyString obj "input-encoding"
+
+data DOMDocumentInputEncodingPropertyInfo
+instance AttrInfo DOMDocumentInputEncodingPropertyInfo where
+    type AttrAllowedOps DOMDocumentInputEncodingPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentInputEncodingPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentInputEncodingPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentInputEncodingPropertyInfo = T.Text
+    type AttrLabel DOMDocumentInputEncodingPropertyInfo = "DOMDocument::input-encoding"
+    attrGet _ = getDOMDocumentInputEncoding
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "last-modified"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentLastModified :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentLastModified obj = liftIO $ getObjectPropertyString obj "last-modified"
+
+data DOMDocumentLastModifiedPropertyInfo
+instance AttrInfo DOMDocumentLastModifiedPropertyInfo where
+    type AttrAllowedOps DOMDocumentLastModifiedPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentLastModifiedPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentLastModifiedPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentLastModifiedPropertyInfo = T.Text
+    type AttrLabel DOMDocumentLastModifiedPropertyInfo = "DOMDocument::last-modified"
+    attrGet _ = getDOMDocumentLastModified
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "links"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentLinks :: (MonadIO m, DOMDocumentK o) => o -> m DOMHTMLCollection
+getDOMDocumentLinks obj = liftIO $ getObjectPropertyObject obj "links" DOMHTMLCollection
+
+data DOMDocumentLinksPropertyInfo
+instance AttrInfo DOMDocumentLinksPropertyInfo where
+    type AttrAllowedOps DOMDocumentLinksPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentLinksPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentLinksPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentLinksPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMDocumentLinksPropertyInfo = "DOMDocument::links"
+    attrGet _ = getDOMDocumentLinks
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "origin"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentOrigin :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentOrigin obj = liftIO $ getObjectPropertyString obj "origin"
+
+data DOMDocumentOriginPropertyInfo
+instance AttrInfo DOMDocumentOriginPropertyInfo where
+    type AttrAllowedOps DOMDocumentOriginPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentOriginPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentOriginPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentOriginPropertyInfo = T.Text
+    type AttrLabel DOMDocumentOriginPropertyInfo = "DOMDocument::origin"
+    attrGet _ = getDOMDocumentOrigin
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "pointer-lock-element"
+   -- Type: TInterface "WebKit2WebExtension" "DOMElement"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentPointerLockElement :: (MonadIO m, DOMDocumentK o) => o -> m DOMElement
+getDOMDocumentPointerLockElement obj = liftIO $ getObjectPropertyObject obj "pointer-lock-element" DOMElement
+
+data DOMDocumentPointerLockElementPropertyInfo
+instance AttrInfo DOMDocumentPointerLockElementPropertyInfo where
+    type AttrAllowedOps DOMDocumentPointerLockElementPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentPointerLockElementPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentPointerLockElementPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentPointerLockElementPropertyInfo = DOMElement
+    type AttrLabel DOMDocumentPointerLockElementPropertyInfo = "DOMDocument::pointer-lock-element"
+    attrGet _ = getDOMDocumentPointerLockElement
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "preferred-stylesheet-set"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentPreferredStylesheetSet :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentPreferredStylesheetSet obj = liftIO $ getObjectPropertyString obj "preferred-stylesheet-set"
+
+data DOMDocumentPreferredStylesheetSetPropertyInfo
+instance AttrInfo DOMDocumentPreferredStylesheetSetPropertyInfo where
+    type AttrAllowedOps DOMDocumentPreferredStylesheetSetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentPreferredStylesheetSetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentPreferredStylesheetSetPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentPreferredStylesheetSetPropertyInfo = T.Text
+    type AttrLabel DOMDocumentPreferredStylesheetSetPropertyInfo = "DOMDocument::preferred-stylesheet-set"
+    attrGet _ = getDOMDocumentPreferredStylesheetSet
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "ready-state"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentReadyState :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentReadyState obj = liftIO $ getObjectPropertyString obj "ready-state"
+
+data DOMDocumentReadyStatePropertyInfo
+instance AttrInfo DOMDocumentReadyStatePropertyInfo where
+    type AttrAllowedOps DOMDocumentReadyStatePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentReadyStatePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentReadyStatePropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentReadyStatePropertyInfo = T.Text
+    type AttrLabel DOMDocumentReadyStatePropertyInfo = "DOMDocument::ready-state"
+    attrGet _ = getDOMDocumentReadyState
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "referrer"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentReferrer :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentReferrer obj = liftIO $ getObjectPropertyString obj "referrer"
+
+data DOMDocumentReferrerPropertyInfo
+instance AttrInfo DOMDocumentReferrerPropertyInfo where
+    type AttrAllowedOps DOMDocumentReferrerPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentReferrerPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentReferrerPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentReferrerPropertyInfo = T.Text
+    type AttrLabel DOMDocumentReferrerPropertyInfo = "DOMDocument::referrer"
+    attrGet _ = getDOMDocumentReferrer
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "selected-stylesheet-set"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMDocumentSelectedStylesheetSet :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentSelectedStylesheetSet obj = liftIO $ getObjectPropertyString obj "selected-stylesheet-set"
+
+setDOMDocumentSelectedStylesheetSet :: (MonadIO m, DOMDocumentK o) => o -> T.Text -> m ()
+setDOMDocumentSelectedStylesheetSet obj val = liftIO $ setObjectPropertyString obj "selected-stylesheet-set" val
+
+constructDOMDocumentSelectedStylesheetSet :: T.Text -> IO ([Char], GValue)
+constructDOMDocumentSelectedStylesheetSet val = constructObjectPropertyString "selected-stylesheet-set" val
+
+data DOMDocumentSelectedStylesheetSetPropertyInfo
+instance AttrInfo DOMDocumentSelectedStylesheetSetPropertyInfo where
+    type AttrAllowedOps DOMDocumentSelectedStylesheetSetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentSelectedStylesheetSetPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMDocumentSelectedStylesheetSetPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentSelectedStylesheetSetPropertyInfo = T.Text
+    type AttrLabel DOMDocumentSelectedStylesheetSetPropertyInfo = "DOMDocument::selected-stylesheet-set"
+    attrGet _ = getDOMDocumentSelectedStylesheetSet
+    attrSet _ = setDOMDocumentSelectedStylesheetSet
+    attrConstruct _ = constructDOMDocumentSelectedStylesheetSet
+
+-- VVV Prop "style-sheets"
+   -- Type: TInterface "WebKit2WebExtension" "DOMStyleSheetList"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentStyleSheets :: (MonadIO m, DOMDocumentK o) => o -> m DOMStyleSheetList
+getDOMDocumentStyleSheets obj = liftIO $ getObjectPropertyObject obj "style-sheets" DOMStyleSheetList
+
+data DOMDocumentStyleSheetsPropertyInfo
+instance AttrInfo DOMDocumentStyleSheetsPropertyInfo where
+    type AttrAllowedOps DOMDocumentStyleSheetsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentStyleSheetsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentStyleSheetsPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentStyleSheetsPropertyInfo = DOMStyleSheetList
+    type AttrLabel DOMDocumentStyleSheetsPropertyInfo = "DOMDocument::style-sheets"
+    attrGet _ = getDOMDocumentStyleSheets
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "title"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMDocumentTitle :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentTitle obj = liftIO $ getObjectPropertyString obj "title"
+
+setDOMDocumentTitle :: (MonadIO m, DOMDocumentK o) => o -> T.Text -> m ()
+setDOMDocumentTitle obj val = liftIO $ setObjectPropertyString obj "title" val
+
+constructDOMDocumentTitle :: T.Text -> IO ([Char], GValue)
+constructDOMDocumentTitle val = constructObjectPropertyString "title" val
+
+data DOMDocumentTitlePropertyInfo
+instance AttrInfo DOMDocumentTitlePropertyInfo where
+    type AttrAllowedOps DOMDocumentTitlePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentTitlePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMDocumentTitlePropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentTitlePropertyInfo = T.Text
+    type AttrLabel DOMDocumentTitlePropertyInfo = "DOMDocument::title"
+    attrGet _ = getDOMDocumentTitle
+    attrSet _ = setDOMDocumentTitle
+    attrConstruct _ = constructDOMDocumentTitle
+
+-- VVV Prop "url"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentUrl :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentUrl obj = liftIO $ getObjectPropertyString obj "url"
+
+data DOMDocumentUrlPropertyInfo
+instance AttrInfo DOMDocumentUrlPropertyInfo where
+    type AttrAllowedOps DOMDocumentUrlPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentUrlPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentUrlPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentUrlPropertyInfo = T.Text
+    type AttrLabel DOMDocumentUrlPropertyInfo = "DOMDocument::url"
+    attrGet _ = getDOMDocumentUrl
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "visibility-state"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentVisibilityState :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentVisibilityState obj = liftIO $ getObjectPropertyString obj "visibility-state"
+
+data DOMDocumentVisibilityStatePropertyInfo
+instance AttrInfo DOMDocumentVisibilityStatePropertyInfo where
+    type AttrAllowedOps DOMDocumentVisibilityStatePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentVisibilityStatePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentVisibilityStatePropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentVisibilityStatePropertyInfo = T.Text
+    type AttrLabel DOMDocumentVisibilityStatePropertyInfo = "DOMDocument::visibility-state"
+    attrGet _ = getDOMDocumentVisibilityState
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "webkit-current-full-screen-element"
+   -- Type: TInterface "WebKit2WebExtension" "DOMElement"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentWebkitCurrentFullScreenElement :: (MonadIO m, DOMDocumentK o) => o -> m DOMElement
+getDOMDocumentWebkitCurrentFullScreenElement obj = liftIO $ getObjectPropertyObject obj "webkit-current-full-screen-element" DOMElement
+
+data DOMDocumentWebkitCurrentFullScreenElementPropertyInfo
+instance AttrInfo DOMDocumentWebkitCurrentFullScreenElementPropertyInfo where
+    type AttrAllowedOps DOMDocumentWebkitCurrentFullScreenElementPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentWebkitCurrentFullScreenElementPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentWebkitCurrentFullScreenElementPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentWebkitCurrentFullScreenElementPropertyInfo = DOMElement
+    type AttrLabel DOMDocumentWebkitCurrentFullScreenElementPropertyInfo = "DOMDocument::webkit-current-full-screen-element"
+    attrGet _ = getDOMDocumentWebkitCurrentFullScreenElement
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "webkit-full-screen-keyboard-input-allowed"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentWebkitFullScreenKeyboardInputAllowed :: (MonadIO m, DOMDocumentK o) => o -> m Bool
+getDOMDocumentWebkitFullScreenKeyboardInputAllowed obj = liftIO $ getObjectPropertyBool obj "webkit-full-screen-keyboard-input-allowed"
+
+data DOMDocumentWebkitFullScreenKeyboardInputAllowedPropertyInfo
+instance AttrInfo DOMDocumentWebkitFullScreenKeyboardInputAllowedPropertyInfo where
+    type AttrAllowedOps DOMDocumentWebkitFullScreenKeyboardInputAllowedPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentWebkitFullScreenKeyboardInputAllowedPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentWebkitFullScreenKeyboardInputAllowedPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentWebkitFullScreenKeyboardInputAllowedPropertyInfo = Bool
+    type AttrLabel DOMDocumentWebkitFullScreenKeyboardInputAllowedPropertyInfo = "DOMDocument::webkit-full-screen-keyboard-input-allowed"
+    attrGet _ = getDOMDocumentWebkitFullScreenKeyboardInputAllowed
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "webkit-fullscreen-element"
+   -- Type: TInterface "WebKit2WebExtension" "DOMElement"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentWebkitFullscreenElement :: (MonadIO m, DOMDocumentK o) => o -> m DOMElement
+getDOMDocumentWebkitFullscreenElement obj = liftIO $ getObjectPropertyObject obj "webkit-fullscreen-element" DOMElement
+
+data DOMDocumentWebkitFullscreenElementPropertyInfo
+instance AttrInfo DOMDocumentWebkitFullscreenElementPropertyInfo where
+    type AttrAllowedOps DOMDocumentWebkitFullscreenElementPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentWebkitFullscreenElementPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentWebkitFullscreenElementPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentWebkitFullscreenElementPropertyInfo = DOMElement
+    type AttrLabel DOMDocumentWebkitFullscreenElementPropertyInfo = "DOMDocument::webkit-fullscreen-element"
+    attrGet _ = getDOMDocumentWebkitFullscreenElement
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "webkit-fullscreen-enabled"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentWebkitFullscreenEnabled :: (MonadIO m, DOMDocumentK o) => o -> m Bool
+getDOMDocumentWebkitFullscreenEnabled obj = liftIO $ getObjectPropertyBool obj "webkit-fullscreen-enabled"
+
+data DOMDocumentWebkitFullscreenEnabledPropertyInfo
+instance AttrInfo DOMDocumentWebkitFullscreenEnabledPropertyInfo where
+    type AttrAllowedOps DOMDocumentWebkitFullscreenEnabledPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentWebkitFullscreenEnabledPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentWebkitFullscreenEnabledPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentWebkitFullscreenEnabledPropertyInfo = Bool
+    type AttrLabel DOMDocumentWebkitFullscreenEnabledPropertyInfo = "DOMDocument::webkit-fullscreen-enabled"
+    attrGet _ = getDOMDocumentWebkitFullscreenEnabled
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "webkit-is-full-screen"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentWebkitIsFullScreen :: (MonadIO m, DOMDocumentK o) => o -> m Bool
+getDOMDocumentWebkitIsFullScreen obj = liftIO $ getObjectPropertyBool obj "webkit-is-full-screen"
+
+data DOMDocumentWebkitIsFullScreenPropertyInfo
+instance AttrInfo DOMDocumentWebkitIsFullScreenPropertyInfo where
+    type AttrAllowedOps DOMDocumentWebkitIsFullScreenPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentWebkitIsFullScreenPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentWebkitIsFullScreenPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentWebkitIsFullScreenPropertyInfo = Bool
+    type AttrLabel DOMDocumentWebkitIsFullScreenPropertyInfo = "DOMDocument::webkit-is-full-screen"
+    attrGet _ = getDOMDocumentWebkitIsFullScreen
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "xml-encoding"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentXmlEncoding :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentXmlEncoding obj = liftIO $ getObjectPropertyString obj "xml-encoding"
+
+data DOMDocumentXmlEncodingPropertyInfo
+instance AttrInfo DOMDocumentXmlEncodingPropertyInfo where
+    type AttrAllowedOps DOMDocumentXmlEncodingPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentXmlEncodingPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentXmlEncodingPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentXmlEncodingPropertyInfo = T.Text
+    type AttrLabel DOMDocumentXmlEncodingPropertyInfo = "DOMDocument::xml-encoding"
+    attrGet _ = getDOMDocumentXmlEncoding
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "xml-standalone"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMDocumentXmlStandalone :: (MonadIO m, DOMDocumentK o) => o -> m Bool
+getDOMDocumentXmlStandalone obj = liftIO $ getObjectPropertyBool obj "xml-standalone"
+
+setDOMDocumentXmlStandalone :: (MonadIO m, DOMDocumentK o) => o -> Bool -> m ()
+setDOMDocumentXmlStandalone obj val = liftIO $ setObjectPropertyBool obj "xml-standalone" val
+
+constructDOMDocumentXmlStandalone :: Bool -> IO ([Char], GValue)
+constructDOMDocumentXmlStandalone val = constructObjectPropertyBool "xml-standalone" val
+
+data DOMDocumentXmlStandalonePropertyInfo
+instance AttrInfo DOMDocumentXmlStandalonePropertyInfo where
+    type AttrAllowedOps DOMDocumentXmlStandalonePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentXmlStandalonePropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMDocumentXmlStandalonePropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentXmlStandalonePropertyInfo = Bool
+    type AttrLabel DOMDocumentXmlStandalonePropertyInfo = "DOMDocument::xml-standalone"
+    attrGet _ = getDOMDocumentXmlStandalone
+    attrSet _ = setDOMDocumentXmlStandalone
+    attrConstruct _ = constructDOMDocumentXmlStandalone
+
+-- VVV Prop "xml-version"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMDocumentXmlVersion :: (MonadIO m, DOMDocumentK o) => o -> m T.Text
+getDOMDocumentXmlVersion obj = liftIO $ getObjectPropertyString obj "xml-version"
+
+setDOMDocumentXmlVersion :: (MonadIO m, DOMDocumentK o) => o -> T.Text -> m ()
+setDOMDocumentXmlVersion obj val = liftIO $ setObjectPropertyString obj "xml-version" val
+
+constructDOMDocumentXmlVersion :: T.Text -> IO ([Char], GValue)
+constructDOMDocumentXmlVersion val = constructObjectPropertyString "xml-version" val
+
+data DOMDocumentXmlVersionPropertyInfo
+instance AttrInfo DOMDocumentXmlVersionPropertyInfo where
+    type AttrAllowedOps DOMDocumentXmlVersionPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentXmlVersionPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMDocumentXmlVersionPropertyInfo = DOMDocumentK
+    type AttrGetType DOMDocumentXmlVersionPropertyInfo = T.Text
+    type AttrLabel DOMDocumentXmlVersionPropertyInfo = "DOMDocument::xml-version"
+    attrGet _ = getDOMDocumentXmlVersion
+    attrSet _ = setDOMDocumentXmlVersion
+    attrConstruct _ = constructDOMDocumentXmlVersion
+
+type instance AttributeList DOMDocument = DOMDocumentAttributeList
+type DOMDocumentAttributeList = ('[ '("active-element", DOMDocumentActiveElementPropertyInfo), '("anchors", DOMDocumentAnchorsPropertyInfo), '("applets", DOMDocumentAppletsPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("body", DOMDocumentBodyPropertyInfo), '("character-set", DOMDocumentCharacterSetPropertyInfo), '("charset", DOMDocumentCharsetPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("compat-mode", DOMDocumentCompatModePropertyInfo), '("content-type", DOMDocumentContentTypePropertyInfo), '("cookie", DOMDocumentCookiePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("current-script", DOMDocumentCurrentScriptPropertyInfo), '("default-charset", DOMDocumentDefaultCharsetPropertyInfo), '("default-view", DOMDocumentDefaultViewPropertyInfo), '("doctype", DOMDocumentDoctypePropertyInfo), '("document-element", DOMDocumentDocumentElementPropertyInfo), '("document-uri", DOMDocumentDocumentUriPropertyInfo), '("domain", DOMDocumentDomainPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("forms", DOMDocumentFormsPropertyInfo), '("head", DOMDocumentHeadPropertyInfo), '("hidden", DOMDocumentHiddenPropertyInfo), '("images", DOMDocumentImagesPropertyInfo), '("implementation", DOMDocumentImplementationPropertyInfo), '("input-encoding", DOMDocumentInputEncodingPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-modified", DOMDocumentLastModifiedPropertyInfo), '("links", DOMDocumentLinksPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("origin", DOMDocumentOriginPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("pointer-lock-element", DOMDocumentPointerLockElementPropertyInfo), '("preferred-stylesheet-set", DOMDocumentPreferredStylesheetSetPropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("ready-state", DOMDocumentReadyStatePropertyInfo), '("referrer", DOMDocumentReferrerPropertyInfo), '("selected-stylesheet-set", DOMDocumentSelectedStylesheetSetPropertyInfo), '("style-sheets", DOMDocumentStyleSheetsPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMDocumentTitlePropertyInfo), '("url", DOMDocumentUrlPropertyInfo), '("visibility-state", DOMDocumentVisibilityStatePropertyInfo), '("webkit-current-full-screen-element", DOMDocumentWebkitCurrentFullScreenElementPropertyInfo), '("webkit-full-screen-keyboard-input-allowed", DOMDocumentWebkitFullScreenKeyboardInputAllowedPropertyInfo), '("webkit-fullscreen-element", DOMDocumentWebkitFullscreenElementPropertyInfo), '("webkit-fullscreen-enabled", DOMDocumentWebkitFullscreenEnabledPropertyInfo), '("webkit-is-full-screen", DOMDocumentWebkitIsFullScreenPropertyInfo), '("xml-encoding", DOMDocumentXmlEncodingPropertyInfo), '("xml-standalone", DOMDocumentXmlStandalonePropertyInfo), '("xml-version", DOMDocumentXmlVersionPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMDocument = DOMDocumentSignalList
+type DOMDocumentSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMDocument::adopt_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "source", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "source", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_adopt_node" webkit_dom_document_adopt_node :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    Ptr DOMNode ->                          -- source : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMDocumentAdoptNode ::
+    (MonadIO m, DOMDocumentK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- source
+    m DOMNode
+dOMDocumentAdoptNode _obj source = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let source' = unsafeManagedPtrCastPtr source
+    onException (do
+        result <- propagateGError $ webkit_dom_document_adopt_node _obj' source'
+        checkUnexpectedReturnNULL "webkit_dom_document_adopt_node" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        touchManagedPtr source
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMDocument::create_attribute
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMAttr"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_attribute" webkit_dom_document_create_attribute :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- name : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMAttr)
+
+
+dOMDocumentCreateAttribute ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- name
+    m DOMAttr
+dOMDocumentCreateAttribute _obj name = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    name' <- textToCString name
+    onException (do
+        result <- propagateGError $ webkit_dom_document_create_attribute _obj' name'
+        checkUnexpectedReturnNULL "webkit_dom_document_create_attribute" result
+        result' <- (newObject DOMAttr) result
+        touchManagedPtr _obj
+        freeMem name'
+        return result'
+     ) (do
+        freeMem name'
+     )
+
+-- method DOMDocument::create_attribute_ns
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "qualifiedName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "qualifiedName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMAttr"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_attribute_ns" webkit_dom_document_create_attribute_ns :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- namespaceURI : TBasicType TUTF8
+    CString ->                              -- qualifiedName : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMAttr)
+
+
+dOMDocumentCreateAttributeNs ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    Maybe (T.Text) ->                       -- namespaceURI
+    T.Text ->                               -- qualifiedName
+    m DOMAttr
+dOMDocumentCreateAttributeNs _obj namespaceURI qualifiedName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    maybeNamespaceURI <- case namespaceURI of
+        Nothing -> return nullPtr
+        Just jNamespaceURI -> do
+            jNamespaceURI' <- textToCString jNamespaceURI
+            return jNamespaceURI'
+    qualifiedName' <- textToCString qualifiedName
+    onException (do
+        result <- propagateGError $ webkit_dom_document_create_attribute_ns _obj' maybeNamespaceURI qualifiedName'
+        checkUnexpectedReturnNULL "webkit_dom_document_create_attribute_ns" result
+        result' <- (newObject DOMAttr) result
+        touchManagedPtr _obj
+        freeMem maybeNamespaceURI
+        freeMem qualifiedName'
+        return result'
+     ) (do
+        freeMem maybeNamespaceURI
+        freeMem qualifiedName'
+     )
+
+-- method DOMDocument::create_cdata_section
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMCDATASection"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_cdata_section" webkit_dom_document_create_cdata_section :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- data : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMCDATASection)
+
+
+dOMDocumentCreateCdataSection ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- data
+    m DOMCDATASection
+dOMDocumentCreateCdataSection _obj data_ = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    data_' <- textToCString data_
+    onException (do
+        result <- propagateGError $ webkit_dom_document_create_cdata_section _obj' data_'
+        checkUnexpectedReturnNULL "webkit_dom_document_create_cdata_section" result
+        result' <- (newObject DOMCDATASection) result
+        touchManagedPtr _obj
+        freeMem data_'
+        return result'
+     ) (do
+        freeMem data_'
+     )
+
+-- method DOMDocument::create_comment
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMComment"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_comment" webkit_dom_document_create_comment :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- data : TBasicType TUTF8
+    IO (Ptr DOMComment)
+
+
+dOMDocumentCreateComment ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- data
+    m DOMComment
+dOMDocumentCreateComment _obj data_ = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    data_' <- textToCString data_
+    result <- webkit_dom_document_create_comment _obj' data_'
+    checkUnexpectedReturnNULL "webkit_dom_document_create_comment" result
+    result' <- (newObject DOMComment) result
+    touchManagedPtr _obj
+    freeMem data_'
+    return result'
+
+-- method DOMDocument::create_css_style_declaration
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_css_style_declaration" webkit_dom_document_create_css_style_declaration :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMCSSStyleDeclaration)
+
+
+dOMDocumentCreateCssStyleDeclaration ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMCSSStyleDeclaration
+dOMDocumentCreateCssStyleDeclaration _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_create_css_style_declaration _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_create_css_style_declaration" result
+    result' <- (wrapObject DOMCSSStyleDeclaration) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::create_document_fragment
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDocumentFragment"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_document_fragment" webkit_dom_document_create_document_fragment :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMDocumentFragment)
+
+
+dOMDocumentCreateDocumentFragment ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMDocumentFragment
+dOMDocumentCreateDocumentFragment _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_create_document_fragment _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_create_document_fragment" result
+    result' <- (newObject DOMDocumentFragment) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::create_element
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "tagName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "tagName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMElement"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_element" webkit_dom_document_create_element :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- tagName : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMElement)
+
+
+dOMDocumentCreateElement ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- tagName
+    m DOMElement
+dOMDocumentCreateElement _obj tagName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    tagName' <- textToCString tagName
+    onException (do
+        result <- propagateGError $ webkit_dom_document_create_element _obj' tagName'
+        checkUnexpectedReturnNULL "webkit_dom_document_create_element" result
+        result' <- (newObject DOMElement) result
+        touchManagedPtr _obj
+        freeMem tagName'
+        return result'
+     ) (do
+        freeMem tagName'
+     )
+
+-- method DOMDocument::create_element_ns
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "qualifiedName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "qualifiedName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMElement"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_element_ns" webkit_dom_document_create_element_ns :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- namespaceURI : TBasicType TUTF8
+    CString ->                              -- qualifiedName : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMElement)
+
+
+dOMDocumentCreateElementNs ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    Maybe (T.Text) ->                       -- namespaceURI
+    T.Text ->                               -- qualifiedName
+    m DOMElement
+dOMDocumentCreateElementNs _obj namespaceURI qualifiedName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    maybeNamespaceURI <- case namespaceURI of
+        Nothing -> return nullPtr
+        Just jNamespaceURI -> do
+            jNamespaceURI' <- textToCString jNamespaceURI
+            return jNamespaceURI'
+    qualifiedName' <- textToCString qualifiedName
+    onException (do
+        result <- propagateGError $ webkit_dom_document_create_element_ns _obj' maybeNamespaceURI qualifiedName'
+        checkUnexpectedReturnNULL "webkit_dom_document_create_element_ns" result
+        result' <- (newObject DOMElement) result
+        touchManagedPtr _obj
+        freeMem maybeNamespaceURI
+        freeMem qualifiedName'
+        return result'
+     ) (do
+        freeMem maybeNamespaceURI
+        freeMem qualifiedName'
+     )
+
+-- method DOMDocument::create_entity_reference
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMEntityReference"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_entity_reference" webkit_dom_document_create_entity_reference :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- name : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMEntityReference)
+
+
+dOMDocumentCreateEntityReference ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    Maybe (T.Text) ->                       -- name
+    m DOMEntityReference
+dOMDocumentCreateEntityReference _obj name = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    maybeName <- case name of
+        Nothing -> return nullPtr
+        Just jName -> do
+            jName' <- textToCString jName
+            return jName'
+    onException (do
+        result <- propagateGError $ webkit_dom_document_create_entity_reference _obj' maybeName
+        checkUnexpectedReturnNULL "webkit_dom_document_create_entity_reference" result
+        result' <- (newObject DOMEntityReference) result
+        touchManagedPtr _obj
+        freeMem maybeName
+        return result'
+     ) (do
+        freeMem maybeName
+     )
+
+-- method DOMDocument::create_event
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "eventType", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "eventType", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMEvent"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_event" webkit_dom_document_create_event :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- eventType : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMEvent)
+
+
+dOMDocumentCreateEvent ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- eventType
+    m DOMEvent
+dOMDocumentCreateEvent _obj eventType = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    eventType' <- textToCString eventType
+    onException (do
+        result <- propagateGError $ webkit_dom_document_create_event _obj' eventType'
+        checkUnexpectedReturnNULL "webkit_dom_document_create_event" result
+        result' <- (wrapObject DOMEvent) result
+        touchManagedPtr _obj
+        freeMem eventType'
+        return result'
+     ) (do
+        freeMem eventType'
+     )
+
+-- method DOMDocument::create_expression
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "expression", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "resolver", argType = TInterface "WebKit2WebExtension" "DOMXPathNSResolver", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "expression", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "resolver", argType = TInterface "WebKit2WebExtension" "DOMXPathNSResolver", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMXPathExpression"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_expression" webkit_dom_document_create_expression :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- expression : TBasicType TUTF8
+    Ptr DOMXPathNSResolver ->               -- resolver : TInterface "WebKit2WebExtension" "DOMXPathNSResolver"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMXPathExpression)
+
+
+dOMDocumentCreateExpression ::
+    (MonadIO m, DOMDocumentK a, DOMXPathNSResolverK b) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- expression
+    b ->                                    -- resolver
+    m DOMXPathExpression
+dOMDocumentCreateExpression _obj expression resolver = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    expression' <- textToCString expression
+    let resolver' = unsafeManagedPtrCastPtr resolver
+    onException (do
+        result <- propagateGError $ webkit_dom_document_create_expression _obj' expression' resolver'
+        checkUnexpectedReturnNULL "webkit_dom_document_create_expression" result
+        result' <- (wrapObject DOMXPathExpression) result
+        touchManagedPtr _obj
+        touchManagedPtr resolver
+        freeMem expression'
+        return result'
+     ) (do
+        freeMem expression'
+     )
+
+-- method DOMDocument::create_node_iterator
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "root", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "whatToShow", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "filter", argType = TInterface "WebKit2WebExtension" "DOMNodeFilter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "expandEntityReferences", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "root", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "whatToShow", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "filter", argType = TInterface "WebKit2WebExtension" "DOMNodeFilter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "expandEntityReferences", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNodeIterator"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_node_iterator" webkit_dom_document_create_node_iterator :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    Ptr DOMNode ->                          -- root : TInterface "WebKit2WebExtension" "DOMNode"
+    Word64 ->                               -- whatToShow : TBasicType TUInt64
+    Ptr DOMNodeFilter ->                    -- filter : TInterface "WebKit2WebExtension" "DOMNodeFilter"
+    CInt ->                                 -- expandEntityReferences : TBasicType TBoolean
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNodeIterator)
+
+
+dOMDocumentCreateNodeIterator ::
+    (MonadIO m, DOMDocumentK a, DOMNodeK b, DOMNodeFilterK c) =>
+    a ->                                    -- _obj
+    b ->                                    -- root
+    Word64 ->                               -- whatToShow
+    Maybe (c) ->                            -- filter
+    Bool ->                                 -- expandEntityReferences
+    m DOMNodeIterator
+dOMDocumentCreateNodeIterator _obj root whatToShow filter expandEntityReferences = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let root' = unsafeManagedPtrCastPtr root
+    maybeFilter <- case filter of
+        Nothing -> return nullPtr
+        Just jFilter -> do
+            let jFilter' = unsafeManagedPtrCastPtr jFilter
+            return jFilter'
+    let expandEntityReferences' = (fromIntegral . fromEnum) expandEntityReferences
+    onException (do
+        result <- propagateGError $ webkit_dom_document_create_node_iterator _obj' root' whatToShow maybeFilter expandEntityReferences'
+        checkUnexpectedReturnNULL "webkit_dom_document_create_node_iterator" result
+        result' <- (wrapObject DOMNodeIterator) result
+        touchManagedPtr _obj
+        touchManagedPtr root
+        whenJust filter touchManagedPtr
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMDocument::create_ns_resolver
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "nodeResolver", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "nodeResolver", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMXPathNSResolver"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_ns_resolver" webkit_dom_document_create_ns_resolver :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    Ptr DOMNode ->                          -- nodeResolver : TInterface "WebKit2WebExtension" "DOMNode"
+    IO (Ptr DOMXPathNSResolver)
+
+
+dOMDocumentCreateNsResolver ::
+    (MonadIO m, DOMDocumentK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- nodeResolver
+    m DOMXPathNSResolver
+dOMDocumentCreateNsResolver _obj nodeResolver = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let nodeResolver' = unsafeManagedPtrCastPtr nodeResolver
+    result <- webkit_dom_document_create_ns_resolver _obj' nodeResolver'
+    checkUnexpectedReturnNULL "webkit_dom_document_create_ns_resolver" result
+    result' <- (wrapObject DOMXPathNSResolver) result
+    touchManagedPtr _obj
+    touchManagedPtr nodeResolver
+    return result'
+
+-- method DOMDocument::create_processing_instruction
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "target", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "target", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMProcessingInstruction"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_processing_instruction" webkit_dom_document_create_processing_instruction :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- target : TBasicType TUTF8
+    CString ->                              -- data : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMProcessingInstruction)
+
+
+dOMDocumentCreateProcessingInstruction ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- target
+    T.Text ->                               -- data
+    m DOMProcessingInstruction
+dOMDocumentCreateProcessingInstruction _obj target data_ = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    target' <- textToCString target
+    data_' <- textToCString data_
+    onException (do
+        result <- propagateGError $ webkit_dom_document_create_processing_instruction _obj' target' data_'
+        checkUnexpectedReturnNULL "webkit_dom_document_create_processing_instruction" result
+        result' <- (newObject DOMProcessingInstruction) result
+        touchManagedPtr _obj
+        freeMem target'
+        freeMem data_'
+        return result'
+     ) (do
+        freeMem target'
+        freeMem data_'
+     )
+
+-- method DOMDocument::create_range
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMRange"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_range" webkit_dom_document_create_range :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMRange)
+
+
+dOMDocumentCreateRange ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMRange
+dOMDocumentCreateRange _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_create_range _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_create_range" result
+    result' <- (wrapObject DOMRange) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::create_text_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "data", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMText"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_text_node" webkit_dom_document_create_text_node :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- data : TBasicType TUTF8
+    IO (Ptr DOMText)
+
+
+dOMDocumentCreateTextNode ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- data
+    m DOMText
+dOMDocumentCreateTextNode _obj data_ = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    data_' <- textToCString data_
+    result <- webkit_dom_document_create_text_node _obj' data_'
+    checkUnexpectedReturnNULL "webkit_dom_document_create_text_node" result
+    result' <- (newObject DOMText) result
+    touchManagedPtr _obj
+    freeMem data_'
+    return result'
+
+-- method DOMDocument::create_tree_walker
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "root", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "whatToShow", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "filter", argType = TInterface "WebKit2WebExtension" "DOMNodeFilter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "expandEntityReferences", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "root", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "whatToShow", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "filter", argType = TInterface "WebKit2WebExtension" "DOMNodeFilter", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "expandEntityReferences", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMTreeWalker"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_create_tree_walker" webkit_dom_document_create_tree_walker :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    Ptr DOMNode ->                          -- root : TInterface "WebKit2WebExtension" "DOMNode"
+    Word64 ->                               -- whatToShow : TBasicType TUInt64
+    Ptr DOMNodeFilter ->                    -- filter : TInterface "WebKit2WebExtension" "DOMNodeFilter"
+    CInt ->                                 -- expandEntityReferences : TBasicType TBoolean
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMTreeWalker)
+
+
+dOMDocumentCreateTreeWalker ::
+    (MonadIO m, DOMDocumentK a, DOMNodeK b, DOMNodeFilterK c) =>
+    a ->                                    -- _obj
+    b ->                                    -- root
+    Word64 ->                               -- whatToShow
+    Maybe (c) ->                            -- filter
+    Bool ->                                 -- expandEntityReferences
+    m DOMTreeWalker
+dOMDocumentCreateTreeWalker _obj root whatToShow filter expandEntityReferences = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let root' = unsafeManagedPtrCastPtr root
+    maybeFilter <- case filter of
+        Nothing -> return nullPtr
+        Just jFilter -> do
+            let jFilter' = unsafeManagedPtrCastPtr jFilter
+            return jFilter'
+    let expandEntityReferences' = (fromIntegral . fromEnum) expandEntityReferences
+    onException (do
+        result <- propagateGError $ webkit_dom_document_create_tree_walker _obj' root' whatToShow maybeFilter expandEntityReferences'
+        checkUnexpectedReturnNULL "webkit_dom_document_create_tree_walker" result
+        result' <- (wrapObject DOMTreeWalker) result
+        touchManagedPtr _obj
+        touchManagedPtr root
+        whenJust filter touchManagedPtr
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMDocument::element_from_point
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "x", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "y", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_element_from_point" webkit_dom_document_element_from_point :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    Int64 ->                                -- x : TBasicType TInt64
+    Int64 ->                                -- y : TBasicType TInt64
+    IO (Ptr DOMElement)
+
+
+dOMDocumentElementFromPoint ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- x
+    Int64 ->                                -- y
+    m DOMElement
+dOMDocumentElementFromPoint _obj x y = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_element_from_point _obj' x y
+    checkUnexpectedReturnNULL "webkit_dom_document_element_from_point" result
+    result' <- (newObject DOMElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::evaluate
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "expression", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "contextNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "resolver", argType = TInterface "WebKit2WebExtension" "DOMXPathNSResolver", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "type", argType = TBasicType TUInt16, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "inResult", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "expression", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "contextNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "resolver", argType = TInterface "WebKit2WebExtension" "DOMXPathNSResolver", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "type", argType = TBasicType TUInt16, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "inResult", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMXPathResult"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_evaluate" webkit_dom_document_evaluate :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- expression : TBasicType TUTF8
+    Ptr DOMNode ->                          -- contextNode : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr DOMXPathNSResolver ->               -- resolver : TInterface "WebKit2WebExtension" "DOMXPathNSResolver"
+    Word16 ->                               -- type : TBasicType TUInt16
+    Ptr DOMXPathResult ->                   -- inResult : TInterface "WebKit2WebExtension" "DOMXPathResult"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMXPathResult)
+
+
+dOMDocumentEvaluate ::
+    (MonadIO m, DOMDocumentK a, DOMNodeK b, DOMXPathNSResolverK c, DOMXPathResultK d) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- expression
+    b ->                                    -- contextNode
+    Maybe (c) ->                            -- resolver
+    Word16 ->                               -- type
+    Maybe (d) ->                            -- inResult
+    m DOMXPathResult
+dOMDocumentEvaluate _obj expression contextNode resolver type_ inResult = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    expression' <- textToCString expression
+    let contextNode' = unsafeManagedPtrCastPtr contextNode
+    maybeResolver <- case resolver of
+        Nothing -> return nullPtr
+        Just jResolver -> do
+            let jResolver' = unsafeManagedPtrCastPtr jResolver
+            return jResolver'
+    maybeInResult <- case inResult of
+        Nothing -> return nullPtr
+        Just jInResult -> do
+            let jInResult' = unsafeManagedPtrCastPtr jInResult
+            return jInResult'
+    onException (do
+        result <- propagateGError $ webkit_dom_document_evaluate _obj' expression' contextNode' maybeResolver type_ maybeInResult
+        checkUnexpectedReturnNULL "webkit_dom_document_evaluate" result
+        result' <- (wrapObject DOMXPathResult) result
+        touchManagedPtr _obj
+        touchManagedPtr contextNode
+        whenJust resolver touchManagedPtr
+        whenJust inResult touchManagedPtr
+        freeMem expression'
+        return result'
+     ) (do
+        freeMem expression'
+     )
+
+-- method DOMDocument::exec_command
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "command", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "userInterface", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "command", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "userInterface", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_exec_command" webkit_dom_document_exec_command :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- command : TBasicType TUTF8
+    CInt ->                                 -- userInterface : TBasicType TBoolean
+    CString ->                              -- value : TBasicType TUTF8
+    IO CInt
+
+
+dOMDocumentExecCommand ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- command
+    Bool ->                                 -- userInterface
+    T.Text ->                               -- value
+    m Bool
+dOMDocumentExecCommand _obj command userInterface value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    command' <- textToCString command
+    let userInterface' = (fromIntegral . fromEnum) userInterface
+    value' <- textToCString value
+    result <- webkit_dom_document_exec_command _obj' command' userInterface' value'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    freeMem command'
+    freeMem value'
+    return result'
+
+-- method DOMDocument::get_active_element
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_active_element" webkit_dom_document_get_active_element :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMElement)
+
+
+dOMDocumentGetActiveElement ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMElement
+dOMDocumentGetActiveElement _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_active_element _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_active_element" result
+    result' <- (newObject DOMElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_anchors
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_anchors" webkit_dom_document_get_anchors :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMHTMLCollection)
+
+
+dOMDocumentGetAnchors ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLCollection
+dOMDocumentGetAnchors _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_anchors _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_anchors" result
+    result' <- (wrapObject DOMHTMLCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_applets
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_applets" webkit_dom_document_get_applets :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMHTMLCollection)
+
+
+dOMDocumentGetApplets ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLCollection
+dOMDocumentGetApplets _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_applets _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_applets" result
+    result' <- (wrapObject DOMHTMLCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_body
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_body" webkit_dom_document_get_body :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMHTMLElement)
+
+
+dOMDocumentGetBody ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLElement
+dOMDocumentGetBody _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_body _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_body" result
+    result' <- (newObject DOMHTMLElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_character_set
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_character_set" webkit_dom_document_get_character_set :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CString
+
+
+dOMDocumentGetCharacterSet ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetCharacterSet _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_character_set _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_character_set" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_charset
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_charset" webkit_dom_document_get_charset :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CString
+
+
+dOMDocumentGetCharset ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetCharset _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_charset _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_charset" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_cookie
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_cookie" webkit_dom_document_get_cookie :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    Ptr (Ptr GError) ->                     -- error
+    IO CString
+
+
+dOMDocumentGetCookie ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetCookie _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_document_get_cookie _obj'
+        checkUnexpectedReturnNULL "webkit_dom_document_get_cookie" result
+        result' <- cstringToText result
+        freeMem result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMDocument::get_default_charset
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_default_charset" webkit_dom_document_get_default_charset :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CString
+
+
+dOMDocumentGetDefaultCharset ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetDefaultCharset _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_default_charset _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_default_charset" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_default_view
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDOMWindow"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_default_view" webkit_dom_document_get_default_view :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMDOMWindow)
+
+
+dOMDocumentGetDefaultView ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMDOMWindow
+dOMDocumentGetDefaultView _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_default_view _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_default_view" result
+    result' <- (wrapObject DOMDOMWindow) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_doctype
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDocumentType"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_doctype" webkit_dom_document_get_doctype :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMDocumentType)
+
+
+dOMDocumentGetDoctype ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMDocumentType
+dOMDocumentGetDoctype _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_doctype _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_doctype" result
+    result' <- (newObject DOMDocumentType) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_document_element
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_document_element" webkit_dom_document_get_document_element :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMElement)
+
+
+dOMDocumentGetDocumentElement ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMElement
+dOMDocumentGetDocumentElement _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_document_element _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_document_element" result
+    result' <- (newObject DOMElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_document_uri
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_document_uri" webkit_dom_document_get_document_uri :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CString
+
+
+dOMDocumentGetDocumentUri ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetDocumentUri _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_document_uri _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_document_uri" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_domain
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_domain" webkit_dom_document_get_domain :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CString
+
+
+dOMDocumentGetDomain ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetDomain _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_domain _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_domain" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_element_by_id
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "elementId", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "elementId", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_element_by_id" webkit_dom_document_get_element_by_id :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- elementId : TBasicType TUTF8
+    IO (Ptr DOMElement)
+
+
+dOMDocumentGetElementById ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- elementId
+    m DOMElement
+dOMDocumentGetElementById _obj elementId = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    elementId' <- textToCString elementId
+    result <- webkit_dom_document_get_element_by_id _obj' elementId'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_element_by_id" result
+    result' <- (newObject DOMElement) result
+    touchManagedPtr _obj
+    freeMem elementId'
+    return result'
+
+-- method DOMDocument::get_elements_by_class_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "tagname", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "tagname", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNodeList"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_elements_by_class_name" webkit_dom_document_get_elements_by_class_name :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- tagname : TBasicType TUTF8
+    IO (Ptr DOMNodeList)
+
+
+dOMDocumentGetElementsByClassName ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- tagname
+    m DOMNodeList
+dOMDocumentGetElementsByClassName _obj tagname = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    tagname' <- textToCString tagname
+    result <- webkit_dom_document_get_elements_by_class_name _obj' tagname'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_elements_by_class_name" result
+    result' <- (wrapObject DOMNodeList) result
+    touchManagedPtr _obj
+    freeMem tagname'
+    return result'
+
+-- method DOMDocument::get_elements_by_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "elementName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "elementName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNodeList"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_elements_by_name" webkit_dom_document_get_elements_by_name :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- elementName : TBasicType TUTF8
+    IO (Ptr DOMNodeList)
+
+
+dOMDocumentGetElementsByName ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- elementName
+    m DOMNodeList
+dOMDocumentGetElementsByName _obj elementName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    elementName' <- textToCString elementName
+    result <- webkit_dom_document_get_elements_by_name _obj' elementName'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_elements_by_name" result
+    result' <- (wrapObject DOMNodeList) result
+    touchManagedPtr _obj
+    freeMem elementName'
+    return result'
+
+-- method DOMDocument::get_elements_by_tag_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "tagname", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "tagname", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNodeList"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_elements_by_tag_name" webkit_dom_document_get_elements_by_tag_name :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- tagname : TBasicType TUTF8
+    IO (Ptr DOMNodeList)
+
+
+dOMDocumentGetElementsByTagName ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- tagname
+    m DOMNodeList
+dOMDocumentGetElementsByTagName _obj tagname = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    tagname' <- textToCString tagname
+    result <- webkit_dom_document_get_elements_by_tag_name _obj' tagname'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_elements_by_tag_name" result
+    result' <- (wrapObject DOMNodeList) result
+    touchManagedPtr _obj
+    freeMem tagname'
+    return result'
+
+-- method DOMDocument::get_elements_by_tag_name_ns
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNodeList"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_elements_by_tag_name_ns" webkit_dom_document_get_elements_by_tag_name_ns :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- namespaceURI : TBasicType TUTF8
+    CString ->                              -- localName : TBasicType TUTF8
+    IO (Ptr DOMNodeList)
+
+
+dOMDocumentGetElementsByTagNameNs ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- namespaceURI
+    T.Text ->                               -- localName
+    m DOMNodeList
+dOMDocumentGetElementsByTagNameNs _obj namespaceURI localName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    namespaceURI' <- textToCString namespaceURI
+    localName' <- textToCString localName
+    result <- webkit_dom_document_get_elements_by_tag_name_ns _obj' namespaceURI' localName'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_elements_by_tag_name_ns" result
+    result' <- (wrapObject DOMNodeList) result
+    touchManagedPtr _obj
+    freeMem namespaceURI'
+    freeMem localName'
+    return result'
+
+-- method DOMDocument::get_forms
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_forms" webkit_dom_document_get_forms :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMHTMLCollection)
+
+
+dOMDocumentGetForms ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLCollection
+dOMDocumentGetForms _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_forms _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_forms" result
+    result' <- (wrapObject DOMHTMLCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_head
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLHeadElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_head" webkit_dom_document_get_head :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMHTMLHeadElement)
+
+
+dOMDocumentGetHead ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLHeadElement
+dOMDocumentGetHead _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_head _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_head" result
+    result' <- (newObject DOMHTMLHeadElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_images
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_images" webkit_dom_document_get_images :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMHTMLCollection)
+
+
+dOMDocumentGetImages ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLCollection
+dOMDocumentGetImages _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_images _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_images" result
+    result' <- (wrapObject DOMHTMLCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_implementation
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDOMImplementation"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_implementation" webkit_dom_document_get_implementation :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMDOMImplementation)
+
+
+dOMDocumentGetImplementation ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMDOMImplementation
+dOMDocumentGetImplementation _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_implementation _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_implementation" result
+    result' <- (wrapObject DOMDOMImplementation) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_input_encoding
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_input_encoding" webkit_dom_document_get_input_encoding :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CString
+
+
+dOMDocumentGetInputEncoding ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetInputEncoding _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_input_encoding _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_input_encoding" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_last_modified
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_last_modified" webkit_dom_document_get_last_modified :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CString
+
+
+dOMDocumentGetLastModified ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetLastModified _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_last_modified _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_last_modified" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_links
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_links" webkit_dom_document_get_links :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMHTMLCollection)
+
+
+dOMDocumentGetLinks ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLCollection
+dOMDocumentGetLinks _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_links _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_links" result
+    result' <- (wrapObject DOMHTMLCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_override_style
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "element", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "pseudoElement", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "element", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "pseudoElement", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_override_style" webkit_dom_document_get_override_style :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    Ptr DOMElement ->                       -- element : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- pseudoElement : TBasicType TUTF8
+    IO (Ptr DOMCSSStyleDeclaration)
+
+
+dOMDocumentGetOverrideStyle ::
+    (MonadIO m, DOMDocumentK a, DOMElementK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- element
+    Maybe (T.Text) ->                       -- pseudoElement
+    m DOMCSSStyleDeclaration
+dOMDocumentGetOverrideStyle _obj element pseudoElement = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let element' = unsafeManagedPtrCastPtr element
+    maybePseudoElement <- case pseudoElement of
+        Nothing -> return nullPtr
+        Just jPseudoElement -> do
+            jPseudoElement' <- textToCString jPseudoElement
+            return jPseudoElement'
+    result <- webkit_dom_document_get_override_style _obj' element' maybePseudoElement
+    checkUnexpectedReturnNULL "webkit_dom_document_get_override_style" result
+    result' <- (wrapObject DOMCSSStyleDeclaration) result
+    touchManagedPtr _obj
+    touchManagedPtr element
+    freeMem maybePseudoElement
+    return result'
+
+-- method DOMDocument::get_preferred_stylesheet_set
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_preferred_stylesheet_set" webkit_dom_document_get_preferred_stylesheet_set :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CString
+
+
+dOMDocumentGetPreferredStylesheetSet ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetPreferredStylesheetSet _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_preferred_stylesheet_set _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_preferred_stylesheet_set" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_ready_state
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_ready_state" webkit_dom_document_get_ready_state :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CString
+
+
+dOMDocumentGetReadyState ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetReadyState _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_ready_state _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_ready_state" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_referrer
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_referrer" webkit_dom_document_get_referrer :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CString
+
+
+dOMDocumentGetReferrer ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetReferrer _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_referrer _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_referrer" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_selected_stylesheet_set
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_selected_stylesheet_set" webkit_dom_document_get_selected_stylesheet_set :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CString
+
+
+dOMDocumentGetSelectedStylesheetSet ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetSelectedStylesheetSet _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_selected_stylesheet_set _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_selected_stylesheet_set" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_style_sheets
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMStyleSheetList"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_style_sheets" webkit_dom_document_get_style_sheets :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO (Ptr DOMStyleSheetList)
+
+
+dOMDocumentGetStyleSheets ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMStyleSheetList
+dOMDocumentGetStyleSheets _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_style_sheets _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_style_sheets" result
+    result' <- (newObject DOMStyleSheetList) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_title
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_title" webkit_dom_document_get_title :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CString
+
+
+dOMDocumentGetTitle ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetTitle _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_title _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_title" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_url
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_url" webkit_dom_document_get_url :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CString
+
+
+dOMDocumentGetUrl ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetUrl _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_url _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_url" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_xml_encoding
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_xml_encoding" webkit_dom_document_get_xml_encoding :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CString
+
+
+dOMDocumentGetXmlEncoding ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetXmlEncoding _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_xml_encoding _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_xml_encoding" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_xml_standalone
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_xml_standalone" webkit_dom_document_get_xml_standalone :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CInt
+
+
+dOMDocumentGetXmlStandalone ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMDocumentGetXmlStandalone _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_xml_standalone _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::get_xml_version
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_get_xml_version" webkit_dom_document_get_xml_version :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CString
+
+
+dOMDocumentGetXmlVersion ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentGetXmlVersion _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_get_xml_version _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_get_xml_version" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::has_focus
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_has_focus" webkit_dom_document_has_focus :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    IO CInt
+
+
+dOMDocumentHasFocus ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMDocumentHasFocus _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_has_focus _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocument::import_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "importedNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "deep", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "importedNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "deep", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_import_node" webkit_dom_document_import_node :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    Ptr DOMNode ->                          -- importedNode : TInterface "WebKit2WebExtension" "DOMNode"
+    CInt ->                                 -- deep : TBasicType TBoolean
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMDocumentImportNode ::
+    (MonadIO m, DOMDocumentK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- importedNode
+    Bool ->                                 -- deep
+    m DOMNode
+dOMDocumentImportNode _obj importedNode deep = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let importedNode' = unsafeManagedPtrCastPtr importedNode
+    let deep' = (fromIntegral . fromEnum) deep
+    onException (do
+        result <- propagateGError $ webkit_dom_document_import_node _obj' importedNode' deep'
+        checkUnexpectedReturnNULL "webkit_dom_document_import_node" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        touchManagedPtr importedNode
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMDocument::query_command_enabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "command", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "command", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_query_command_enabled" webkit_dom_document_query_command_enabled :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- command : TBasicType TUTF8
+    IO CInt
+
+
+dOMDocumentQueryCommandEnabled ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- command
+    m Bool
+dOMDocumentQueryCommandEnabled _obj command = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    command' <- textToCString command
+    result <- webkit_dom_document_query_command_enabled _obj' command'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    freeMem command'
+    return result'
+
+-- method DOMDocument::query_command_indeterm
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "command", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "command", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_query_command_indeterm" webkit_dom_document_query_command_indeterm :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- command : TBasicType TUTF8
+    IO CInt
+
+
+dOMDocumentQueryCommandIndeterm ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- command
+    m Bool
+dOMDocumentQueryCommandIndeterm _obj command = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    command' <- textToCString command
+    result <- webkit_dom_document_query_command_indeterm _obj' command'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    freeMem command'
+    return result'
+
+-- method DOMDocument::query_command_state
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "command", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "command", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_query_command_state" webkit_dom_document_query_command_state :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- command : TBasicType TUTF8
+    IO CInt
+
+
+dOMDocumentQueryCommandState ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- command
+    m Bool
+dOMDocumentQueryCommandState _obj command = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    command' <- textToCString command
+    result <- webkit_dom_document_query_command_state _obj' command'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    freeMem command'
+    return result'
+
+-- method DOMDocument::query_command_supported
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "command", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "command", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_query_command_supported" webkit_dom_document_query_command_supported :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- command : TBasicType TUTF8
+    IO CInt
+
+
+dOMDocumentQueryCommandSupported ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- command
+    m Bool
+dOMDocumentQueryCommandSupported _obj command = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    command' <- textToCString command
+    result <- webkit_dom_document_query_command_supported _obj' command'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    freeMem command'
+    return result'
+
+-- method DOMDocument::query_command_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "command", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "command", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_query_command_value" webkit_dom_document_query_command_value :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- command : TBasicType TUTF8
+    IO CString
+
+
+dOMDocumentQueryCommandValue ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- command
+    m T.Text
+dOMDocumentQueryCommandValue _obj command = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    command' <- textToCString command
+    result <- webkit_dom_document_query_command_value _obj' command'
+    checkUnexpectedReturnNULL "webkit_dom_document_query_command_value" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    freeMem command'
+    return result'
+
+-- method DOMDocument::query_selector
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selectors", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selectors", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMElement"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_query_selector" webkit_dom_document_query_selector :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- selectors : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMElement)
+
+
+dOMDocumentQuerySelector ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- selectors
+    m DOMElement
+dOMDocumentQuerySelector _obj selectors = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    selectors' <- textToCString selectors
+    onException (do
+        result <- propagateGError $ webkit_dom_document_query_selector _obj' selectors'
+        checkUnexpectedReturnNULL "webkit_dom_document_query_selector" result
+        result' <- (newObject DOMElement) result
+        touchManagedPtr _obj
+        freeMem selectors'
+        return result'
+     ) (do
+        freeMem selectors'
+     )
+
+-- method DOMDocument::query_selector_all
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selectors", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selectors", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNodeList"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_query_selector_all" webkit_dom_document_query_selector_all :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- selectors : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNodeList)
+
+
+dOMDocumentQuerySelectorAll ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- selectors
+    m DOMNodeList
+dOMDocumentQuerySelectorAll _obj selectors = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    selectors' <- textToCString selectors
+    onException (do
+        result <- propagateGError $ webkit_dom_document_query_selector_all _obj' selectors'
+        checkUnexpectedReturnNULL "webkit_dom_document_query_selector_all" result
+        result' <- (wrapObject DOMNodeList) result
+        touchManagedPtr _obj
+        freeMem selectors'
+        return result'
+     ) (do
+        freeMem selectors'
+     )
+
+-- method DOMDocument::set_body
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_set_body" webkit_dom_document_set_body :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    Ptr DOMHTMLElement ->                   -- value : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMDocumentSetBody ::
+    (MonadIO m, DOMDocumentK a, DOMHTMLElementK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- value
+    m ()
+dOMDocumentSetBody _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = unsafeManagedPtrCastPtr value
+    onException (do
+        propagateGError $ webkit_dom_document_set_body _obj' value'
+        touchManagedPtr _obj
+        touchManagedPtr value
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMDocument::set_charset
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_set_charset" webkit_dom_document_set_charset :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMDocumentSetCharset ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMDocumentSetCharset _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_document_set_charset _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMDocument::set_cookie
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_set_cookie" webkit_dom_document_set_cookie :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMDocumentSetCookie ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMDocumentSetCookie _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_document_set_cookie _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+-- method DOMDocument::set_document_uri
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_set_document_uri" webkit_dom_document_set_document_uri :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMDocumentSetDocumentUri ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMDocumentSetDocumentUri _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_document_set_document_uri _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMDocument::set_selected_stylesheet_set
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_set_selected_stylesheet_set" webkit_dom_document_set_selected_stylesheet_set :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMDocumentSetSelectedStylesheetSet ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMDocumentSetSelectedStylesheetSet _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_document_set_selected_stylesheet_set _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMDocument::set_title
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_set_title" webkit_dom_document_set_title :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMDocumentSetTitle ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMDocumentSetTitle _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_document_set_title _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMDocument::set_xml_standalone
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_set_xml_standalone" webkit_dom_document_set_xml_standalone :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CInt ->                                 -- value : TBasicType TBoolean
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMDocumentSetXmlStandalone ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMDocumentSetXmlStandalone _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    onException (do
+        propagateGError $ webkit_dom_document_set_xml_standalone _obj' value'
+        touchManagedPtr _obj
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMDocument::set_xml_version
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_set_xml_version" webkit_dom_document_set_xml_version :: 
+    Ptr DOMDocument ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMDocument"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMDocumentSetXmlVersion ::
+    (MonadIO m, DOMDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMDocumentSetXmlVersion _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_document_set_xml_version _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMDocument.hs-boot b/GI/WebKit2WebExtension/Objects/DOMDocument.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMDocument.hs-boot
@@ -0,0 +1,55 @@
+module GI.WebKit2WebExtension.Objects.DOMDocument where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMDocument = DOMDocument (ForeignPtr DOMDocument)
+instance GObject DOMDocument where
+class GObject o => DOMDocumentK o
+instance (GObject o, IsDescendantOf DOMDocument o) => DOMDocumentK o
+data DOMDocumentActiveElementPropertyInfo
+data DOMDocumentAnchorsPropertyInfo
+data DOMDocumentAppletsPropertyInfo
+data DOMDocumentBodyPropertyInfo
+data DOMDocumentCharacterSetPropertyInfo
+data DOMDocumentCharsetPropertyInfo
+data DOMDocumentCompatModePropertyInfo
+data DOMDocumentContentTypePropertyInfo
+data DOMDocumentCookiePropertyInfo
+data DOMDocumentCurrentScriptPropertyInfo
+data DOMDocumentDefaultCharsetPropertyInfo
+data DOMDocumentDefaultViewPropertyInfo
+data DOMDocumentDoctypePropertyInfo
+data DOMDocumentDocumentElementPropertyInfo
+data DOMDocumentDocumentUriPropertyInfo
+data DOMDocumentDomainPropertyInfo
+data DOMDocumentFormsPropertyInfo
+data DOMDocumentHeadPropertyInfo
+data DOMDocumentHiddenPropertyInfo
+data DOMDocumentImagesPropertyInfo
+data DOMDocumentImplementationPropertyInfo
+data DOMDocumentInputEncodingPropertyInfo
+data DOMDocumentLastModifiedPropertyInfo
+data DOMDocumentLinksPropertyInfo
+data DOMDocumentOriginPropertyInfo
+data DOMDocumentPointerLockElementPropertyInfo
+data DOMDocumentPreferredStylesheetSetPropertyInfo
+data DOMDocumentReadyStatePropertyInfo
+data DOMDocumentReferrerPropertyInfo
+data DOMDocumentSelectedStylesheetSetPropertyInfo
+data DOMDocumentStyleSheetsPropertyInfo
+data DOMDocumentTitlePropertyInfo
+data DOMDocumentUrlPropertyInfo
+data DOMDocumentVisibilityStatePropertyInfo
+data DOMDocumentWebkitCurrentFullScreenElementPropertyInfo
+data DOMDocumentWebkitFullScreenKeyboardInputAllowedPropertyInfo
+data DOMDocumentWebkitFullscreenElementPropertyInfo
+data DOMDocumentWebkitFullscreenEnabledPropertyInfo
+data DOMDocumentWebkitIsFullScreenPropertyInfo
+data DOMDocumentXmlEncodingPropertyInfo
+data DOMDocumentXmlStandalonePropertyInfo
+data DOMDocumentXmlVersionPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMDocumentFragment.hs b/GI/WebKit2WebExtension/Objects/DOMDocumentFragment.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMDocumentFragment.hs
@@ -0,0 +1,58 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMDocumentFragment
+    ( 
+
+-- * Exported types
+    DOMDocumentFragment(..)                 ,
+    DOMDocumentFragmentK                    ,
+    toDOMDocumentFragment                   ,
+    noDOMDocumentFragment                   ,
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMDocumentFragment = DOMDocumentFragment (ForeignPtr DOMDocumentFragment)
+foreign import ccall "webkit_dom_document_fragment_get_type"
+    c_webkit_dom_document_fragment_get_type :: IO GType
+
+type instance ParentTypes DOMDocumentFragment = DOMDocumentFragmentParentTypes
+type DOMDocumentFragmentParentTypes = '[DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMDocumentFragment where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_document_fragment_get_type
+    
+
+class GObject o => DOMDocumentFragmentK o
+instance (GObject o, IsDescendantOf DOMDocumentFragment o) => DOMDocumentFragmentK o
+
+toDOMDocumentFragment :: DOMDocumentFragmentK o => o -> IO DOMDocumentFragment
+toDOMDocumentFragment = unsafeCastTo DOMDocumentFragment
+
+noDOMDocumentFragment :: Maybe DOMDocumentFragment
+noDOMDocumentFragment = Nothing
+
+type instance AttributeList DOMDocumentFragment = DOMDocumentFragmentAttributeList
+type DOMDocumentFragmentAttributeList = ('[ '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMDocumentFragment = DOMDocumentFragmentSignalList
+type DOMDocumentFragmentSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMDocumentFragment.hs-boot b/GI/WebKit2WebExtension/Objects/DOMDocumentFragment.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMDocumentFragment.hs-boot
@@ -0,0 +1,13 @@
+module GI.WebKit2WebExtension.Objects.DOMDocumentFragment where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMDocumentFragment = DOMDocumentFragment (ForeignPtr DOMDocumentFragment)
+instance GObject DOMDocumentFragment where
+class GObject o => DOMDocumentFragmentK o
+instance (GObject o, IsDescendantOf DOMDocumentFragment o) => DOMDocumentFragmentK o
diff --git a/GI/WebKit2WebExtension/Objects/DOMDocumentType.hs b/GI/WebKit2WebExtension/Objects/DOMDocumentType.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMDocumentType.hs
@@ -0,0 +1,386 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMDocumentType
+    ( 
+
+-- * Exported types
+    DOMDocumentType(..)                     ,
+    DOMDocumentTypeK                        ,
+    toDOMDocumentType                       ,
+    noDOMDocumentType                       ,
+
+
+ -- * Methods
+-- ** dOMDocumentTypeGetEntities
+    dOMDocumentTypeGetEntities              ,
+
+
+-- ** dOMDocumentTypeGetInternalSubset
+    dOMDocumentTypeGetInternalSubset        ,
+
+
+-- ** dOMDocumentTypeGetName
+    dOMDocumentTypeGetName                  ,
+
+
+-- ** dOMDocumentTypeGetNotations
+    dOMDocumentTypeGetNotations             ,
+
+
+-- ** dOMDocumentTypeGetPublicId
+    dOMDocumentTypeGetPublicId              ,
+
+
+-- ** dOMDocumentTypeGetSystemId
+    dOMDocumentTypeGetSystemId              ,
+
+
+
+
+ -- * Properties
+-- ** Entities
+    DOMDocumentTypeEntitiesPropertyInfo     ,
+    getDOMDocumentTypeEntities              ,
+
+
+-- ** InternalSubset
+    DOMDocumentTypeInternalSubsetPropertyInfo,
+    getDOMDocumentTypeInternalSubset        ,
+
+
+-- ** Name
+    DOMDocumentTypeNamePropertyInfo         ,
+    getDOMDocumentTypeName                  ,
+
+
+-- ** Notations
+    DOMDocumentTypeNotationsPropertyInfo    ,
+    getDOMDocumentTypeNotations             ,
+
+
+-- ** PublicId
+    DOMDocumentTypePublicIdPropertyInfo     ,
+    getDOMDocumentTypePublicId              ,
+
+
+-- ** SystemId
+    DOMDocumentTypeSystemIdPropertyInfo     ,
+    getDOMDocumentTypeSystemId              ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMDocumentType = DOMDocumentType (ForeignPtr DOMDocumentType)
+foreign import ccall "webkit_dom_document_type_get_type"
+    c_webkit_dom_document_type_get_type :: IO GType
+
+type instance ParentTypes DOMDocumentType = DOMDocumentTypeParentTypes
+type DOMDocumentTypeParentTypes = '[DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMDocumentType where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_document_type_get_type
+    
+
+class GObject o => DOMDocumentTypeK o
+instance (GObject o, IsDescendantOf DOMDocumentType o) => DOMDocumentTypeK o
+
+toDOMDocumentType :: DOMDocumentTypeK o => o -> IO DOMDocumentType
+toDOMDocumentType = unsafeCastTo DOMDocumentType
+
+noDOMDocumentType :: Maybe DOMDocumentType
+noDOMDocumentType = Nothing
+
+-- VVV Prop "entities"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNamedNodeMap"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentTypeEntities :: (MonadIO m, DOMDocumentTypeK o) => o -> m DOMNamedNodeMap
+getDOMDocumentTypeEntities obj = liftIO $ getObjectPropertyObject obj "entities" DOMNamedNodeMap
+
+data DOMDocumentTypeEntitiesPropertyInfo
+instance AttrInfo DOMDocumentTypeEntitiesPropertyInfo where
+    type AttrAllowedOps DOMDocumentTypeEntitiesPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentTypeEntitiesPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentTypeEntitiesPropertyInfo = DOMDocumentTypeK
+    type AttrGetType DOMDocumentTypeEntitiesPropertyInfo = DOMNamedNodeMap
+    type AttrLabel DOMDocumentTypeEntitiesPropertyInfo = "DOMDocumentType::entities"
+    attrGet _ = getDOMDocumentTypeEntities
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "internal-subset"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentTypeInternalSubset :: (MonadIO m, DOMDocumentTypeK o) => o -> m T.Text
+getDOMDocumentTypeInternalSubset obj = liftIO $ getObjectPropertyString obj "internal-subset"
+
+data DOMDocumentTypeInternalSubsetPropertyInfo
+instance AttrInfo DOMDocumentTypeInternalSubsetPropertyInfo where
+    type AttrAllowedOps DOMDocumentTypeInternalSubsetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentTypeInternalSubsetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentTypeInternalSubsetPropertyInfo = DOMDocumentTypeK
+    type AttrGetType DOMDocumentTypeInternalSubsetPropertyInfo = T.Text
+    type AttrLabel DOMDocumentTypeInternalSubsetPropertyInfo = "DOMDocumentType::internal-subset"
+    attrGet _ = getDOMDocumentTypeInternalSubset
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentTypeName :: (MonadIO m, DOMDocumentTypeK o) => o -> m T.Text
+getDOMDocumentTypeName obj = liftIO $ getObjectPropertyString obj "name"
+
+data DOMDocumentTypeNamePropertyInfo
+instance AttrInfo DOMDocumentTypeNamePropertyInfo where
+    type AttrAllowedOps DOMDocumentTypeNamePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentTypeNamePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentTypeNamePropertyInfo = DOMDocumentTypeK
+    type AttrGetType DOMDocumentTypeNamePropertyInfo = T.Text
+    type AttrLabel DOMDocumentTypeNamePropertyInfo = "DOMDocumentType::name"
+    attrGet _ = getDOMDocumentTypeName
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "notations"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNamedNodeMap"
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentTypeNotations :: (MonadIO m, DOMDocumentTypeK o) => o -> m DOMNamedNodeMap
+getDOMDocumentTypeNotations obj = liftIO $ getObjectPropertyObject obj "notations" DOMNamedNodeMap
+
+data DOMDocumentTypeNotationsPropertyInfo
+instance AttrInfo DOMDocumentTypeNotationsPropertyInfo where
+    type AttrAllowedOps DOMDocumentTypeNotationsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentTypeNotationsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentTypeNotationsPropertyInfo = DOMDocumentTypeK
+    type AttrGetType DOMDocumentTypeNotationsPropertyInfo = DOMNamedNodeMap
+    type AttrLabel DOMDocumentTypeNotationsPropertyInfo = "DOMDocumentType::notations"
+    attrGet _ = getDOMDocumentTypeNotations
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "public-id"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentTypePublicId :: (MonadIO m, DOMDocumentTypeK o) => o -> m T.Text
+getDOMDocumentTypePublicId obj = liftIO $ getObjectPropertyString obj "public-id"
+
+data DOMDocumentTypePublicIdPropertyInfo
+instance AttrInfo DOMDocumentTypePublicIdPropertyInfo where
+    type AttrAllowedOps DOMDocumentTypePublicIdPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentTypePublicIdPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentTypePublicIdPropertyInfo = DOMDocumentTypeK
+    type AttrGetType DOMDocumentTypePublicIdPropertyInfo = T.Text
+    type AttrLabel DOMDocumentTypePublicIdPropertyInfo = "DOMDocumentType::public-id"
+    attrGet _ = getDOMDocumentTypePublicId
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "system-id"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMDocumentTypeSystemId :: (MonadIO m, DOMDocumentTypeK o) => o -> m T.Text
+getDOMDocumentTypeSystemId obj = liftIO $ getObjectPropertyString obj "system-id"
+
+data DOMDocumentTypeSystemIdPropertyInfo
+instance AttrInfo DOMDocumentTypeSystemIdPropertyInfo where
+    type AttrAllowedOps DOMDocumentTypeSystemIdPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMDocumentTypeSystemIdPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMDocumentTypeSystemIdPropertyInfo = DOMDocumentTypeK
+    type AttrGetType DOMDocumentTypeSystemIdPropertyInfo = T.Text
+    type AttrLabel DOMDocumentTypeSystemIdPropertyInfo = "DOMDocumentType::system-id"
+    attrGet _ = getDOMDocumentTypeSystemId
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMDocumentType = DOMDocumentTypeAttributeList
+type DOMDocumentTypeAttributeList = ('[ '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("entities", DOMDocumentTypeEntitiesPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("internal-subset", DOMDocumentTypeInternalSubsetPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("name", DOMDocumentTypeNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("notations", DOMDocumentTypeNotationsPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("public-id", DOMDocumentTypePublicIdPropertyInfo), '("system-id", DOMDocumentTypeSystemIdPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMDocumentType = DOMDocumentTypeSignalList
+type DOMDocumentTypeSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMDocumentType::get_entities
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocumentType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocumentType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNamedNodeMap"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_type_get_entities" webkit_dom_document_type_get_entities :: 
+    Ptr DOMDocumentType ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMDocumentType"
+    IO (Ptr DOMNamedNodeMap)
+
+
+dOMDocumentTypeGetEntities ::
+    (MonadIO m, DOMDocumentTypeK a) =>
+    a ->                                    -- _obj
+    m DOMNamedNodeMap
+dOMDocumentTypeGetEntities _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_type_get_entities _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_type_get_entities" result
+    result' <- (wrapObject DOMNamedNodeMap) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocumentType::get_internal_subset
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocumentType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocumentType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_type_get_internal_subset" webkit_dom_document_type_get_internal_subset :: 
+    Ptr DOMDocumentType ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMDocumentType"
+    IO CString
+
+
+dOMDocumentTypeGetInternalSubset ::
+    (MonadIO m, DOMDocumentTypeK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentTypeGetInternalSubset _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_type_get_internal_subset _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_type_get_internal_subset" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocumentType::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocumentType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocumentType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_type_get_name" webkit_dom_document_type_get_name :: 
+    Ptr DOMDocumentType ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMDocumentType"
+    IO CString
+
+
+dOMDocumentTypeGetName ::
+    (MonadIO m, DOMDocumentTypeK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentTypeGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_type_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_type_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocumentType::get_notations
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocumentType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocumentType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNamedNodeMap"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_type_get_notations" webkit_dom_document_type_get_notations :: 
+    Ptr DOMDocumentType ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMDocumentType"
+    IO (Ptr DOMNamedNodeMap)
+
+
+dOMDocumentTypeGetNotations ::
+    (MonadIO m, DOMDocumentTypeK a) =>
+    a ->                                    -- _obj
+    m DOMNamedNodeMap
+dOMDocumentTypeGetNotations _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_type_get_notations _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_type_get_notations" result
+    result' <- (wrapObject DOMNamedNodeMap) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocumentType::get_public_id
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocumentType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocumentType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_type_get_public_id" webkit_dom_document_type_get_public_id :: 
+    Ptr DOMDocumentType ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMDocumentType"
+    IO CString
+
+
+dOMDocumentTypeGetPublicId ::
+    (MonadIO m, DOMDocumentTypeK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentTypeGetPublicId _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_type_get_public_id _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_type_get_public_id" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMDocumentType::get_system_id
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocumentType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMDocumentType", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_document_type_get_system_id" webkit_dom_document_type_get_system_id :: 
+    Ptr DOMDocumentType ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMDocumentType"
+    IO CString
+
+
+dOMDocumentTypeGetSystemId ::
+    (MonadIO m, DOMDocumentTypeK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMDocumentTypeGetSystemId _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_document_type_get_system_id _obj'
+    checkUnexpectedReturnNULL "webkit_dom_document_type_get_system_id" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMDocumentType.hs-boot b/GI/WebKit2WebExtension/Objects/DOMDocumentType.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMDocumentType.hs-boot
@@ -0,0 +1,19 @@
+module GI.WebKit2WebExtension.Objects.DOMDocumentType where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMDocumentType = DOMDocumentType (ForeignPtr DOMDocumentType)
+instance GObject DOMDocumentType where
+class GObject o => DOMDocumentTypeK o
+instance (GObject o, IsDescendantOf DOMDocumentType o) => DOMDocumentTypeK o
+data DOMDocumentTypeEntitiesPropertyInfo
+data DOMDocumentTypeInternalSubsetPropertyInfo
+data DOMDocumentTypeNamePropertyInfo
+data DOMDocumentTypeNotationsPropertyInfo
+data DOMDocumentTypePublicIdPropertyInfo
+data DOMDocumentTypeSystemIdPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMElement.hs b/GI/WebKit2WebExtension/Objects/DOMElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMElement.hs
@@ -0,0 +1,2530 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMElement
+    ( 
+
+-- * Exported types
+    DOMElement(..)                          ,
+    DOMElementK                             ,
+    toDOMElement                            ,
+    noDOMElement                            ,
+
+
+ -- * Methods
+-- ** dOMElementBlur
+    dOMElementBlur                          ,
+
+
+-- ** dOMElementFocus
+    dOMElementFocus                         ,
+
+
+-- ** dOMElementGetAttribute
+    dOMElementGetAttribute                  ,
+
+
+-- ** dOMElementGetAttributeNode
+    dOMElementGetAttributeNode              ,
+
+
+-- ** dOMElementGetAttributeNodeNs
+    dOMElementGetAttributeNodeNs            ,
+
+
+-- ** dOMElementGetAttributeNs
+    dOMElementGetAttributeNs                ,
+
+
+-- ** dOMElementGetAttributes
+    dOMElementGetAttributes                 ,
+
+
+-- ** dOMElementGetChildElementCount
+    dOMElementGetChildElementCount          ,
+
+
+-- ** dOMElementGetClassName
+    dOMElementGetClassName                  ,
+
+
+-- ** dOMElementGetClientHeight
+    dOMElementGetClientHeight               ,
+
+
+-- ** dOMElementGetClientLeft
+    dOMElementGetClientLeft                 ,
+
+
+-- ** dOMElementGetClientTop
+    dOMElementGetClientTop                  ,
+
+
+-- ** dOMElementGetClientWidth
+    dOMElementGetClientWidth                ,
+
+
+-- ** dOMElementGetElementsByClassName
+    dOMElementGetElementsByClassName        ,
+
+
+-- ** dOMElementGetElementsByTagName
+    dOMElementGetElementsByTagName          ,
+
+
+-- ** dOMElementGetElementsByTagNameNs
+    dOMElementGetElementsByTagNameNs        ,
+
+
+-- ** dOMElementGetFirstElementChild
+    dOMElementGetFirstElementChild          ,
+
+
+-- ** dOMElementGetId
+    dOMElementGetId                         ,
+
+
+-- ** dOMElementGetInnerHtml
+    dOMElementGetInnerHtml                  ,
+
+
+-- ** dOMElementGetLastElementChild
+    dOMElementGetLastElementChild           ,
+
+
+-- ** dOMElementGetNextElementSibling
+    dOMElementGetNextElementSibling         ,
+
+
+-- ** dOMElementGetOffsetHeight
+    dOMElementGetOffsetHeight               ,
+
+
+-- ** dOMElementGetOffsetLeft
+    dOMElementGetOffsetLeft                 ,
+
+
+-- ** dOMElementGetOffsetParent
+    dOMElementGetOffsetParent               ,
+
+
+-- ** dOMElementGetOffsetTop
+    dOMElementGetOffsetTop                  ,
+
+
+-- ** dOMElementGetOffsetWidth
+    dOMElementGetOffsetWidth                ,
+
+
+-- ** dOMElementGetOuterHtml
+    dOMElementGetOuterHtml                  ,
+
+
+-- ** dOMElementGetPreviousElementSibling
+    dOMElementGetPreviousElementSibling     ,
+
+
+-- ** dOMElementGetScrollHeight
+    dOMElementGetScrollHeight               ,
+
+
+-- ** dOMElementGetScrollLeft
+    dOMElementGetScrollLeft                 ,
+
+
+-- ** dOMElementGetScrollTop
+    dOMElementGetScrollTop                  ,
+
+
+-- ** dOMElementGetScrollWidth
+    dOMElementGetScrollWidth                ,
+
+
+-- ** dOMElementGetStyle
+    dOMElementGetStyle                      ,
+
+
+-- ** dOMElementGetTagName
+    dOMElementGetTagName                    ,
+
+
+-- ** dOMElementHasAttribute
+    dOMElementHasAttribute                  ,
+
+
+-- ** dOMElementHasAttributeNs
+    dOMElementHasAttributeNs                ,
+
+
+-- ** dOMElementHasAttributes
+    dOMElementHasAttributes                 ,
+
+
+-- ** dOMElementQuerySelector
+    dOMElementQuerySelector                 ,
+
+
+-- ** dOMElementQuerySelectorAll
+    dOMElementQuerySelectorAll              ,
+
+
+-- ** dOMElementRemoveAttribute
+    dOMElementRemoveAttribute               ,
+
+
+-- ** dOMElementRemoveAttributeNode
+    dOMElementRemoveAttributeNode           ,
+
+
+-- ** dOMElementRemoveAttributeNs
+    dOMElementRemoveAttributeNs             ,
+
+
+-- ** dOMElementScrollByLines
+    dOMElementScrollByLines                 ,
+
+
+-- ** dOMElementScrollByPages
+    dOMElementScrollByPages                 ,
+
+
+-- ** dOMElementScrollIntoView
+    dOMElementScrollIntoView                ,
+
+
+-- ** dOMElementScrollIntoViewIfNeeded
+    dOMElementScrollIntoViewIfNeeded        ,
+
+
+-- ** dOMElementSetAttribute
+    dOMElementSetAttribute                  ,
+
+
+-- ** dOMElementSetAttributeNode
+    dOMElementSetAttributeNode              ,
+
+
+-- ** dOMElementSetAttributeNodeNs
+    dOMElementSetAttributeNodeNs            ,
+
+
+-- ** dOMElementSetAttributeNs
+    dOMElementSetAttributeNs                ,
+
+
+-- ** dOMElementSetClassName
+    dOMElementSetClassName                  ,
+
+
+-- ** dOMElementSetId
+    dOMElementSetId                         ,
+
+
+-- ** dOMElementSetInnerHtml
+    dOMElementSetInnerHtml                  ,
+
+
+-- ** dOMElementSetOuterHtml
+    dOMElementSetOuterHtml                  ,
+
+
+-- ** dOMElementSetScrollLeft
+    dOMElementSetScrollLeft                 ,
+
+
+-- ** dOMElementSetScrollTop
+    dOMElementSetScrollTop                  ,
+
+
+
+
+ -- * Properties
+-- ** Attributes
+    DOMElementAttributesPropertyInfo        ,
+    getDOMElementAttributes                 ,
+
+
+-- ** ChildElementCount
+    DOMElementChildElementCountPropertyInfo ,
+    getDOMElementChildElementCount          ,
+
+
+-- ** ClassName
+    DOMElementClassNamePropertyInfo         ,
+    constructDOMElementClassName            ,
+    getDOMElementClassName                  ,
+    setDOMElementClassName                  ,
+
+
+-- ** ClientHeight
+    DOMElementClientHeightPropertyInfo      ,
+    getDOMElementClientHeight               ,
+
+
+-- ** ClientLeft
+    DOMElementClientLeftPropertyInfo        ,
+    getDOMElementClientLeft                 ,
+
+
+-- ** ClientTop
+    DOMElementClientTopPropertyInfo         ,
+    getDOMElementClientTop                  ,
+
+
+-- ** ClientWidth
+    DOMElementClientWidthPropertyInfo       ,
+    getDOMElementClientWidth                ,
+
+
+-- ** FirstElementChild
+    DOMElementFirstElementChildPropertyInfo ,
+    getDOMElementFirstElementChild          ,
+
+
+-- ** Id
+    DOMElementIdPropertyInfo                ,
+    constructDOMElementId                   ,
+    getDOMElementId                         ,
+    setDOMElementId                         ,
+
+
+-- ** InnerHtml
+    DOMElementInnerHtmlPropertyInfo         ,
+    constructDOMElementInnerHtml            ,
+    getDOMElementInnerHtml                  ,
+    setDOMElementInnerHtml                  ,
+
+
+-- ** LastElementChild
+    DOMElementLastElementChildPropertyInfo  ,
+    getDOMElementLastElementChild           ,
+
+
+-- ** NextElementSibling
+    DOMElementNextElementSiblingPropertyInfo,
+    getDOMElementNextElementSibling         ,
+
+
+-- ** OffsetHeight
+    DOMElementOffsetHeightPropertyInfo      ,
+    getDOMElementOffsetHeight               ,
+
+
+-- ** OffsetLeft
+    DOMElementOffsetLeftPropertyInfo        ,
+    getDOMElementOffsetLeft                 ,
+
+
+-- ** OffsetParent
+    DOMElementOffsetParentPropertyInfo      ,
+    getDOMElementOffsetParent               ,
+
+
+-- ** OffsetTop
+    DOMElementOffsetTopPropertyInfo         ,
+    getDOMElementOffsetTop                  ,
+
+
+-- ** OffsetWidth
+    DOMElementOffsetWidthPropertyInfo       ,
+    getDOMElementOffsetWidth                ,
+
+
+-- ** OuterHtml
+    DOMElementOuterHtmlPropertyInfo         ,
+    constructDOMElementOuterHtml            ,
+    getDOMElementOuterHtml                  ,
+    setDOMElementOuterHtml                  ,
+
+
+-- ** PreviousElementSibling
+    DOMElementPreviousElementSiblingPropertyInfo,
+    getDOMElementPreviousElementSibling     ,
+
+
+-- ** ScrollHeight
+    DOMElementScrollHeightPropertyInfo      ,
+    getDOMElementScrollHeight               ,
+
+
+-- ** ScrollLeft
+    DOMElementScrollLeftPropertyInfo        ,
+    constructDOMElementScrollLeft           ,
+    getDOMElementScrollLeft                 ,
+    setDOMElementScrollLeft                 ,
+
+
+-- ** ScrollTop
+    DOMElementScrollTopPropertyInfo         ,
+    constructDOMElementScrollTop            ,
+    getDOMElementScrollTop                  ,
+    setDOMElementScrollTop                  ,
+
+
+-- ** ScrollWidth
+    DOMElementScrollWidthPropertyInfo       ,
+    getDOMElementScrollWidth                ,
+
+
+-- ** Style
+    DOMElementStylePropertyInfo             ,
+    getDOMElementStyle                      ,
+
+
+-- ** TagName
+    DOMElementTagNamePropertyInfo           ,
+    getDOMElementTagName                    ,
+
+
+-- ** WebkitRegionOverset
+    DOMElementWebkitRegionOversetPropertyInfo,
+    getDOMElementWebkitRegionOverset        ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMElement = DOMElement (ForeignPtr DOMElement)
+foreign import ccall "webkit_dom_element_get_type"
+    c_webkit_dom_element_get_type :: IO GType
+
+type instance ParentTypes DOMElement = DOMElementParentTypes
+type DOMElementParentTypes = '[DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_element_get_type
+    
+
+class GObject o => DOMElementK o
+instance (GObject o, IsDescendantOf DOMElement o) => DOMElementK o
+
+toDOMElement :: DOMElementK o => o -> IO DOMElement
+toDOMElement = unsafeCastTo DOMElement
+
+noDOMElement :: Maybe DOMElement
+noDOMElement = Nothing
+
+-- VVV Prop "attributes"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNamedNodeMap"
+   -- Flags: [PropertyReadable]
+
+getDOMElementAttributes :: (MonadIO m, DOMElementK o) => o -> m DOMNamedNodeMap
+getDOMElementAttributes obj = liftIO $ getObjectPropertyObject obj "attributes" DOMNamedNodeMap
+
+data DOMElementAttributesPropertyInfo
+instance AttrInfo DOMElementAttributesPropertyInfo where
+    type AttrAllowedOps DOMElementAttributesPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementAttributesPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementAttributesPropertyInfo = DOMElementK
+    type AttrGetType DOMElementAttributesPropertyInfo = DOMNamedNodeMap
+    type AttrLabel DOMElementAttributesPropertyInfo = "DOMElement::attributes"
+    attrGet _ = getDOMElementAttributes
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "child-element-count"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMElementChildElementCount :: (MonadIO m, DOMElementK o) => o -> m Word64
+getDOMElementChildElementCount obj = liftIO $ getObjectPropertyUInt64 obj "child-element-count"
+
+data DOMElementChildElementCountPropertyInfo
+instance AttrInfo DOMElementChildElementCountPropertyInfo where
+    type AttrAllowedOps DOMElementChildElementCountPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementChildElementCountPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementChildElementCountPropertyInfo = DOMElementK
+    type AttrGetType DOMElementChildElementCountPropertyInfo = Word64
+    type AttrLabel DOMElementChildElementCountPropertyInfo = "DOMElement::child-element-count"
+    attrGet _ = getDOMElementChildElementCount
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "class-name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMElementClassName :: (MonadIO m, DOMElementK o) => o -> m T.Text
+getDOMElementClassName obj = liftIO $ getObjectPropertyString obj "class-name"
+
+setDOMElementClassName :: (MonadIO m, DOMElementK o) => o -> T.Text -> m ()
+setDOMElementClassName obj val = liftIO $ setObjectPropertyString obj "class-name" val
+
+constructDOMElementClassName :: T.Text -> IO ([Char], GValue)
+constructDOMElementClassName val = constructObjectPropertyString "class-name" val
+
+data DOMElementClassNamePropertyInfo
+instance AttrInfo DOMElementClassNamePropertyInfo where
+    type AttrAllowedOps DOMElementClassNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMElementClassNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMElementClassNamePropertyInfo = DOMElementK
+    type AttrGetType DOMElementClassNamePropertyInfo = T.Text
+    type AttrLabel DOMElementClassNamePropertyInfo = "DOMElement::class-name"
+    attrGet _ = getDOMElementClassName
+    attrSet _ = setDOMElementClassName
+    attrConstruct _ = constructDOMElementClassName
+
+-- VVV Prop "client-height"
+   -- Type: TBasicType TDouble
+   -- Flags: [PropertyReadable]
+
+getDOMElementClientHeight :: (MonadIO m, DOMElementK o) => o -> m Double
+getDOMElementClientHeight obj = liftIO $ getObjectPropertyDouble obj "client-height"
+
+data DOMElementClientHeightPropertyInfo
+instance AttrInfo DOMElementClientHeightPropertyInfo where
+    type AttrAllowedOps DOMElementClientHeightPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementClientHeightPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementClientHeightPropertyInfo = DOMElementK
+    type AttrGetType DOMElementClientHeightPropertyInfo = Double
+    type AttrLabel DOMElementClientHeightPropertyInfo = "DOMElement::client-height"
+    attrGet _ = getDOMElementClientHeight
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "client-left"
+   -- Type: TBasicType TDouble
+   -- Flags: [PropertyReadable]
+
+getDOMElementClientLeft :: (MonadIO m, DOMElementK o) => o -> m Double
+getDOMElementClientLeft obj = liftIO $ getObjectPropertyDouble obj "client-left"
+
+data DOMElementClientLeftPropertyInfo
+instance AttrInfo DOMElementClientLeftPropertyInfo where
+    type AttrAllowedOps DOMElementClientLeftPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementClientLeftPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementClientLeftPropertyInfo = DOMElementK
+    type AttrGetType DOMElementClientLeftPropertyInfo = Double
+    type AttrLabel DOMElementClientLeftPropertyInfo = "DOMElement::client-left"
+    attrGet _ = getDOMElementClientLeft
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "client-top"
+   -- Type: TBasicType TDouble
+   -- Flags: [PropertyReadable]
+
+getDOMElementClientTop :: (MonadIO m, DOMElementK o) => o -> m Double
+getDOMElementClientTop obj = liftIO $ getObjectPropertyDouble obj "client-top"
+
+data DOMElementClientTopPropertyInfo
+instance AttrInfo DOMElementClientTopPropertyInfo where
+    type AttrAllowedOps DOMElementClientTopPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementClientTopPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementClientTopPropertyInfo = DOMElementK
+    type AttrGetType DOMElementClientTopPropertyInfo = Double
+    type AttrLabel DOMElementClientTopPropertyInfo = "DOMElement::client-top"
+    attrGet _ = getDOMElementClientTop
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "client-width"
+   -- Type: TBasicType TDouble
+   -- Flags: [PropertyReadable]
+
+getDOMElementClientWidth :: (MonadIO m, DOMElementK o) => o -> m Double
+getDOMElementClientWidth obj = liftIO $ getObjectPropertyDouble obj "client-width"
+
+data DOMElementClientWidthPropertyInfo
+instance AttrInfo DOMElementClientWidthPropertyInfo where
+    type AttrAllowedOps DOMElementClientWidthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementClientWidthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementClientWidthPropertyInfo = DOMElementK
+    type AttrGetType DOMElementClientWidthPropertyInfo = Double
+    type AttrLabel DOMElementClientWidthPropertyInfo = "DOMElement::client-width"
+    attrGet _ = getDOMElementClientWidth
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "first-element-child"
+   -- Type: TInterface "WebKit2WebExtension" "DOMElement"
+   -- Flags: [PropertyReadable]
+
+getDOMElementFirstElementChild :: (MonadIO m, DOMElementK o) => o -> m DOMElement
+getDOMElementFirstElementChild obj = liftIO $ getObjectPropertyObject obj "first-element-child" DOMElement
+
+data DOMElementFirstElementChildPropertyInfo
+instance AttrInfo DOMElementFirstElementChildPropertyInfo where
+    type AttrAllowedOps DOMElementFirstElementChildPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementFirstElementChildPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementFirstElementChildPropertyInfo = DOMElementK
+    type AttrGetType DOMElementFirstElementChildPropertyInfo = DOMElement
+    type AttrLabel DOMElementFirstElementChildPropertyInfo = "DOMElement::first-element-child"
+    attrGet _ = getDOMElementFirstElementChild
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "id"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMElementId :: (MonadIO m, DOMElementK o) => o -> m T.Text
+getDOMElementId obj = liftIO $ getObjectPropertyString obj "id"
+
+setDOMElementId :: (MonadIO m, DOMElementK o) => o -> T.Text -> m ()
+setDOMElementId obj val = liftIO $ setObjectPropertyString obj "id" val
+
+constructDOMElementId :: T.Text -> IO ([Char], GValue)
+constructDOMElementId val = constructObjectPropertyString "id" val
+
+data DOMElementIdPropertyInfo
+instance AttrInfo DOMElementIdPropertyInfo where
+    type AttrAllowedOps DOMElementIdPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMElementIdPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMElementIdPropertyInfo = DOMElementK
+    type AttrGetType DOMElementIdPropertyInfo = T.Text
+    type AttrLabel DOMElementIdPropertyInfo = "DOMElement::id"
+    attrGet _ = getDOMElementId
+    attrSet _ = setDOMElementId
+    attrConstruct _ = constructDOMElementId
+
+-- VVV Prop "inner-html"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMElementInnerHtml :: (MonadIO m, DOMElementK o) => o -> m T.Text
+getDOMElementInnerHtml obj = liftIO $ getObjectPropertyString obj "inner-html"
+
+setDOMElementInnerHtml :: (MonadIO m, DOMElementK o) => o -> T.Text -> m ()
+setDOMElementInnerHtml obj val = liftIO $ setObjectPropertyString obj "inner-html" val
+
+constructDOMElementInnerHtml :: T.Text -> IO ([Char], GValue)
+constructDOMElementInnerHtml val = constructObjectPropertyString "inner-html" val
+
+data DOMElementInnerHtmlPropertyInfo
+instance AttrInfo DOMElementInnerHtmlPropertyInfo where
+    type AttrAllowedOps DOMElementInnerHtmlPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMElementInnerHtmlPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMElementInnerHtmlPropertyInfo = DOMElementK
+    type AttrGetType DOMElementInnerHtmlPropertyInfo = T.Text
+    type AttrLabel DOMElementInnerHtmlPropertyInfo = "DOMElement::inner-html"
+    attrGet _ = getDOMElementInnerHtml
+    attrSet _ = setDOMElementInnerHtml
+    attrConstruct _ = constructDOMElementInnerHtml
+
+-- VVV Prop "last-element-child"
+   -- Type: TInterface "WebKit2WebExtension" "DOMElement"
+   -- Flags: [PropertyReadable]
+
+getDOMElementLastElementChild :: (MonadIO m, DOMElementK o) => o -> m DOMElement
+getDOMElementLastElementChild obj = liftIO $ getObjectPropertyObject obj "last-element-child" DOMElement
+
+data DOMElementLastElementChildPropertyInfo
+instance AttrInfo DOMElementLastElementChildPropertyInfo where
+    type AttrAllowedOps DOMElementLastElementChildPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementLastElementChildPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementLastElementChildPropertyInfo = DOMElementK
+    type AttrGetType DOMElementLastElementChildPropertyInfo = DOMElement
+    type AttrLabel DOMElementLastElementChildPropertyInfo = "DOMElement::last-element-child"
+    attrGet _ = getDOMElementLastElementChild
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "next-element-sibling"
+   -- Type: TInterface "WebKit2WebExtension" "DOMElement"
+   -- Flags: [PropertyReadable]
+
+getDOMElementNextElementSibling :: (MonadIO m, DOMElementK o) => o -> m DOMElement
+getDOMElementNextElementSibling obj = liftIO $ getObjectPropertyObject obj "next-element-sibling" DOMElement
+
+data DOMElementNextElementSiblingPropertyInfo
+instance AttrInfo DOMElementNextElementSiblingPropertyInfo where
+    type AttrAllowedOps DOMElementNextElementSiblingPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementNextElementSiblingPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementNextElementSiblingPropertyInfo = DOMElementK
+    type AttrGetType DOMElementNextElementSiblingPropertyInfo = DOMElement
+    type AttrLabel DOMElementNextElementSiblingPropertyInfo = "DOMElement::next-element-sibling"
+    attrGet _ = getDOMElementNextElementSibling
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "offset-height"
+   -- Type: TBasicType TDouble
+   -- Flags: [PropertyReadable]
+
+getDOMElementOffsetHeight :: (MonadIO m, DOMElementK o) => o -> m Double
+getDOMElementOffsetHeight obj = liftIO $ getObjectPropertyDouble obj "offset-height"
+
+data DOMElementOffsetHeightPropertyInfo
+instance AttrInfo DOMElementOffsetHeightPropertyInfo where
+    type AttrAllowedOps DOMElementOffsetHeightPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementOffsetHeightPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementOffsetHeightPropertyInfo = DOMElementK
+    type AttrGetType DOMElementOffsetHeightPropertyInfo = Double
+    type AttrLabel DOMElementOffsetHeightPropertyInfo = "DOMElement::offset-height"
+    attrGet _ = getDOMElementOffsetHeight
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "offset-left"
+   -- Type: TBasicType TDouble
+   -- Flags: [PropertyReadable]
+
+getDOMElementOffsetLeft :: (MonadIO m, DOMElementK o) => o -> m Double
+getDOMElementOffsetLeft obj = liftIO $ getObjectPropertyDouble obj "offset-left"
+
+data DOMElementOffsetLeftPropertyInfo
+instance AttrInfo DOMElementOffsetLeftPropertyInfo where
+    type AttrAllowedOps DOMElementOffsetLeftPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementOffsetLeftPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementOffsetLeftPropertyInfo = DOMElementK
+    type AttrGetType DOMElementOffsetLeftPropertyInfo = Double
+    type AttrLabel DOMElementOffsetLeftPropertyInfo = "DOMElement::offset-left"
+    attrGet _ = getDOMElementOffsetLeft
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "offset-parent"
+   -- Type: TInterface "WebKit2WebExtension" "DOMElement"
+   -- Flags: [PropertyReadable]
+
+getDOMElementOffsetParent :: (MonadIO m, DOMElementK o) => o -> m DOMElement
+getDOMElementOffsetParent obj = liftIO $ getObjectPropertyObject obj "offset-parent" DOMElement
+
+data DOMElementOffsetParentPropertyInfo
+instance AttrInfo DOMElementOffsetParentPropertyInfo where
+    type AttrAllowedOps DOMElementOffsetParentPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementOffsetParentPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementOffsetParentPropertyInfo = DOMElementK
+    type AttrGetType DOMElementOffsetParentPropertyInfo = DOMElement
+    type AttrLabel DOMElementOffsetParentPropertyInfo = "DOMElement::offset-parent"
+    attrGet _ = getDOMElementOffsetParent
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "offset-top"
+   -- Type: TBasicType TDouble
+   -- Flags: [PropertyReadable]
+
+getDOMElementOffsetTop :: (MonadIO m, DOMElementK o) => o -> m Double
+getDOMElementOffsetTop obj = liftIO $ getObjectPropertyDouble obj "offset-top"
+
+data DOMElementOffsetTopPropertyInfo
+instance AttrInfo DOMElementOffsetTopPropertyInfo where
+    type AttrAllowedOps DOMElementOffsetTopPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementOffsetTopPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementOffsetTopPropertyInfo = DOMElementK
+    type AttrGetType DOMElementOffsetTopPropertyInfo = Double
+    type AttrLabel DOMElementOffsetTopPropertyInfo = "DOMElement::offset-top"
+    attrGet _ = getDOMElementOffsetTop
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "offset-width"
+   -- Type: TBasicType TDouble
+   -- Flags: [PropertyReadable]
+
+getDOMElementOffsetWidth :: (MonadIO m, DOMElementK o) => o -> m Double
+getDOMElementOffsetWidth obj = liftIO $ getObjectPropertyDouble obj "offset-width"
+
+data DOMElementOffsetWidthPropertyInfo
+instance AttrInfo DOMElementOffsetWidthPropertyInfo where
+    type AttrAllowedOps DOMElementOffsetWidthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementOffsetWidthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementOffsetWidthPropertyInfo = DOMElementK
+    type AttrGetType DOMElementOffsetWidthPropertyInfo = Double
+    type AttrLabel DOMElementOffsetWidthPropertyInfo = "DOMElement::offset-width"
+    attrGet _ = getDOMElementOffsetWidth
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "outer-html"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMElementOuterHtml :: (MonadIO m, DOMElementK o) => o -> m T.Text
+getDOMElementOuterHtml obj = liftIO $ getObjectPropertyString obj "outer-html"
+
+setDOMElementOuterHtml :: (MonadIO m, DOMElementK o) => o -> T.Text -> m ()
+setDOMElementOuterHtml obj val = liftIO $ setObjectPropertyString obj "outer-html" val
+
+constructDOMElementOuterHtml :: T.Text -> IO ([Char], GValue)
+constructDOMElementOuterHtml val = constructObjectPropertyString "outer-html" val
+
+data DOMElementOuterHtmlPropertyInfo
+instance AttrInfo DOMElementOuterHtmlPropertyInfo where
+    type AttrAllowedOps DOMElementOuterHtmlPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMElementOuterHtmlPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMElementOuterHtmlPropertyInfo = DOMElementK
+    type AttrGetType DOMElementOuterHtmlPropertyInfo = T.Text
+    type AttrLabel DOMElementOuterHtmlPropertyInfo = "DOMElement::outer-html"
+    attrGet _ = getDOMElementOuterHtml
+    attrSet _ = setDOMElementOuterHtml
+    attrConstruct _ = constructDOMElementOuterHtml
+
+-- VVV Prop "previous-element-sibling"
+   -- Type: TInterface "WebKit2WebExtension" "DOMElement"
+   -- Flags: [PropertyReadable]
+
+getDOMElementPreviousElementSibling :: (MonadIO m, DOMElementK o) => o -> m DOMElement
+getDOMElementPreviousElementSibling obj = liftIO $ getObjectPropertyObject obj "previous-element-sibling" DOMElement
+
+data DOMElementPreviousElementSiblingPropertyInfo
+instance AttrInfo DOMElementPreviousElementSiblingPropertyInfo where
+    type AttrAllowedOps DOMElementPreviousElementSiblingPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementPreviousElementSiblingPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementPreviousElementSiblingPropertyInfo = DOMElementK
+    type AttrGetType DOMElementPreviousElementSiblingPropertyInfo = DOMElement
+    type AttrLabel DOMElementPreviousElementSiblingPropertyInfo = "DOMElement::previous-element-sibling"
+    attrGet _ = getDOMElementPreviousElementSibling
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "scroll-height"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMElementScrollHeight :: (MonadIO m, DOMElementK o) => o -> m Int64
+getDOMElementScrollHeight obj = liftIO $ getObjectPropertyInt64 obj "scroll-height"
+
+data DOMElementScrollHeightPropertyInfo
+instance AttrInfo DOMElementScrollHeightPropertyInfo where
+    type AttrAllowedOps DOMElementScrollHeightPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementScrollHeightPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementScrollHeightPropertyInfo = DOMElementK
+    type AttrGetType DOMElementScrollHeightPropertyInfo = Int64
+    type AttrLabel DOMElementScrollHeightPropertyInfo = "DOMElement::scroll-height"
+    attrGet _ = getDOMElementScrollHeight
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "scroll-left"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMElementScrollLeft :: (MonadIO m, DOMElementK o) => o -> m Int64
+getDOMElementScrollLeft obj = liftIO $ getObjectPropertyInt64 obj "scroll-left"
+
+setDOMElementScrollLeft :: (MonadIO m, DOMElementK o) => o -> Int64 -> m ()
+setDOMElementScrollLeft obj val = liftIO $ setObjectPropertyInt64 obj "scroll-left" val
+
+constructDOMElementScrollLeft :: Int64 -> IO ([Char], GValue)
+constructDOMElementScrollLeft val = constructObjectPropertyInt64 "scroll-left" val
+
+data DOMElementScrollLeftPropertyInfo
+instance AttrInfo DOMElementScrollLeftPropertyInfo where
+    type AttrAllowedOps DOMElementScrollLeftPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMElementScrollLeftPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMElementScrollLeftPropertyInfo = DOMElementK
+    type AttrGetType DOMElementScrollLeftPropertyInfo = Int64
+    type AttrLabel DOMElementScrollLeftPropertyInfo = "DOMElement::scroll-left"
+    attrGet _ = getDOMElementScrollLeft
+    attrSet _ = setDOMElementScrollLeft
+    attrConstruct _ = constructDOMElementScrollLeft
+
+-- VVV Prop "scroll-top"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMElementScrollTop :: (MonadIO m, DOMElementK o) => o -> m Int64
+getDOMElementScrollTop obj = liftIO $ getObjectPropertyInt64 obj "scroll-top"
+
+setDOMElementScrollTop :: (MonadIO m, DOMElementK o) => o -> Int64 -> m ()
+setDOMElementScrollTop obj val = liftIO $ setObjectPropertyInt64 obj "scroll-top" val
+
+constructDOMElementScrollTop :: Int64 -> IO ([Char], GValue)
+constructDOMElementScrollTop val = constructObjectPropertyInt64 "scroll-top" val
+
+data DOMElementScrollTopPropertyInfo
+instance AttrInfo DOMElementScrollTopPropertyInfo where
+    type AttrAllowedOps DOMElementScrollTopPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMElementScrollTopPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMElementScrollTopPropertyInfo = DOMElementK
+    type AttrGetType DOMElementScrollTopPropertyInfo = Int64
+    type AttrLabel DOMElementScrollTopPropertyInfo = "DOMElement::scroll-top"
+    attrGet _ = getDOMElementScrollTop
+    attrSet _ = setDOMElementScrollTop
+    attrConstruct _ = constructDOMElementScrollTop
+
+-- VVV Prop "scroll-width"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMElementScrollWidth :: (MonadIO m, DOMElementK o) => o -> m Int64
+getDOMElementScrollWidth obj = liftIO $ getObjectPropertyInt64 obj "scroll-width"
+
+data DOMElementScrollWidthPropertyInfo
+instance AttrInfo DOMElementScrollWidthPropertyInfo where
+    type AttrAllowedOps DOMElementScrollWidthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementScrollWidthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementScrollWidthPropertyInfo = DOMElementK
+    type AttrGetType DOMElementScrollWidthPropertyInfo = Int64
+    type AttrLabel DOMElementScrollWidthPropertyInfo = "DOMElement::scroll-width"
+    attrGet _ = getDOMElementScrollWidth
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "style"
+   -- Type: TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration"
+   -- Flags: [PropertyReadable]
+
+getDOMElementStyle :: (MonadIO m, DOMElementK o) => o -> m DOMCSSStyleDeclaration
+getDOMElementStyle obj = liftIO $ getObjectPropertyObject obj "style" DOMCSSStyleDeclaration
+
+data DOMElementStylePropertyInfo
+instance AttrInfo DOMElementStylePropertyInfo where
+    type AttrAllowedOps DOMElementStylePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementStylePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementStylePropertyInfo = DOMElementK
+    type AttrGetType DOMElementStylePropertyInfo = DOMCSSStyleDeclaration
+    type AttrLabel DOMElementStylePropertyInfo = "DOMElement::style"
+    attrGet _ = getDOMElementStyle
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "tag-name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMElementTagName :: (MonadIO m, DOMElementK o) => o -> m T.Text
+getDOMElementTagName obj = liftIO $ getObjectPropertyString obj "tag-name"
+
+data DOMElementTagNamePropertyInfo
+instance AttrInfo DOMElementTagNamePropertyInfo where
+    type AttrAllowedOps DOMElementTagNamePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementTagNamePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementTagNamePropertyInfo = DOMElementK
+    type AttrGetType DOMElementTagNamePropertyInfo = T.Text
+    type AttrLabel DOMElementTagNamePropertyInfo = "DOMElement::tag-name"
+    attrGet _ = getDOMElementTagName
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "webkit-region-overset"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMElementWebkitRegionOverset :: (MonadIO m, DOMElementK o) => o -> m T.Text
+getDOMElementWebkitRegionOverset obj = liftIO $ getObjectPropertyString obj "webkit-region-overset"
+
+data DOMElementWebkitRegionOversetPropertyInfo
+instance AttrInfo DOMElementWebkitRegionOversetPropertyInfo where
+    type AttrAllowedOps DOMElementWebkitRegionOversetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMElementWebkitRegionOversetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMElementWebkitRegionOversetPropertyInfo = DOMElementK
+    type AttrGetType DOMElementWebkitRegionOversetPropertyInfo = T.Text
+    type AttrLabel DOMElementWebkitRegionOversetPropertyInfo = "DOMElement::webkit-region-overset"
+    attrGet _ = getDOMElementWebkitRegionOverset
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMElement = DOMElementAttributeList
+type DOMElementAttributeList = ('[ '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMElement = DOMElementSignalList
+type DOMElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMElement::blur
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_blur" webkit_dom_element_blur :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO ()
+
+
+dOMElementBlur ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMElementBlur _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_element_blur _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMElement::focus
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_focus" webkit_dom_element_focus :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO ()
+
+
+dOMElementFocus ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMElementFocus _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_element_focus _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMElement::get_attribute
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_attribute" webkit_dom_element_get_attribute :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- name : TBasicType TUTF8
+    IO CString
+
+
+dOMElementGetAttribute ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- name
+    m T.Text
+dOMElementGetAttribute _obj name = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    name' <- textToCString name
+    result <- webkit_dom_element_get_attribute _obj' name'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_attribute" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    freeMem name'
+    return result'
+
+-- method DOMElement::get_attribute_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMAttr"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_attribute_node" webkit_dom_element_get_attribute_node :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- name : TBasicType TUTF8
+    IO (Ptr DOMAttr)
+
+
+dOMElementGetAttributeNode ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- name
+    m DOMAttr
+dOMElementGetAttributeNode _obj name = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    name' <- textToCString name
+    result <- webkit_dom_element_get_attribute_node _obj' name'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_attribute_node" result
+    result' <- (newObject DOMAttr) result
+    touchManagedPtr _obj
+    freeMem name'
+    return result'
+
+-- method DOMElement::get_attribute_node_ns
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMAttr"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_attribute_node_ns" webkit_dom_element_get_attribute_node_ns :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- namespaceURI : TBasicType TUTF8
+    CString ->                              -- localName : TBasicType TUTF8
+    IO (Ptr DOMAttr)
+
+
+dOMElementGetAttributeNodeNs ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- namespaceURI
+    T.Text ->                               -- localName
+    m DOMAttr
+dOMElementGetAttributeNodeNs _obj namespaceURI localName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    namespaceURI' <- textToCString namespaceURI
+    localName' <- textToCString localName
+    result <- webkit_dom_element_get_attribute_node_ns _obj' namespaceURI' localName'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_attribute_node_ns" result
+    result' <- (newObject DOMAttr) result
+    touchManagedPtr _obj
+    freeMem namespaceURI'
+    freeMem localName'
+    return result'
+
+-- method DOMElement::get_attribute_ns
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_attribute_ns" webkit_dom_element_get_attribute_ns :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- namespaceURI : TBasicType TUTF8
+    CString ->                              -- localName : TBasicType TUTF8
+    IO CString
+
+
+dOMElementGetAttributeNs ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- namespaceURI
+    T.Text ->                               -- localName
+    m T.Text
+dOMElementGetAttributeNs _obj namespaceURI localName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    namespaceURI' <- textToCString namespaceURI
+    localName' <- textToCString localName
+    result <- webkit_dom_element_get_attribute_ns _obj' namespaceURI' localName'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_attribute_ns" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    freeMem namespaceURI'
+    freeMem localName'
+    return result'
+
+-- method DOMElement::get_attributes
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNamedNodeMap"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_attributes" webkit_dom_element_get_attributes :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO (Ptr DOMNamedNodeMap)
+
+
+dOMElementGetAttributes ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m DOMNamedNodeMap
+dOMElementGetAttributes _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_attributes _obj'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_attributes" result
+    result' <- (wrapObject DOMNamedNodeMap) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_child_element_count
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_child_element_count" webkit_dom_element_get_child_element_count :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO Word64
+
+
+dOMElementGetChildElementCount ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMElementGetChildElementCount _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_child_element_count _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMElement::get_class_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_class_name" webkit_dom_element_get_class_name :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO CString
+
+
+dOMElementGetClassName ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMElementGetClassName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_class_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_class_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_client_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TDouble
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_client_height" webkit_dom_element_get_client_height :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO CDouble
+
+
+dOMElementGetClientHeight ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m Double
+dOMElementGetClientHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_client_height _obj'
+    let result' = realToFrac result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_client_left
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TDouble
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_client_left" webkit_dom_element_get_client_left :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO CDouble
+
+
+dOMElementGetClientLeft ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m Double
+dOMElementGetClientLeft _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_client_left _obj'
+    let result' = realToFrac result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_client_top
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TDouble
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_client_top" webkit_dom_element_get_client_top :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO CDouble
+
+
+dOMElementGetClientTop ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m Double
+dOMElementGetClientTop _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_client_top _obj'
+    let result' = realToFrac result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_client_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TDouble
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_client_width" webkit_dom_element_get_client_width :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO CDouble
+
+
+dOMElementGetClientWidth ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m Double
+dOMElementGetClientWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_client_width _obj'
+    let result' = realToFrac result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_elements_by_class_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNodeList"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_elements_by_class_name" webkit_dom_element_get_elements_by_class_name :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- name : TBasicType TUTF8
+    IO (Ptr DOMNodeList)
+
+
+dOMElementGetElementsByClassName ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- name
+    m DOMNodeList
+dOMElementGetElementsByClassName _obj name = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    name' <- textToCString name
+    result <- webkit_dom_element_get_elements_by_class_name _obj' name'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_elements_by_class_name" result
+    result' <- (wrapObject DOMNodeList) result
+    touchManagedPtr _obj
+    freeMem name'
+    return result'
+
+-- method DOMElement::get_elements_by_tag_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNodeList"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_elements_by_tag_name" webkit_dom_element_get_elements_by_tag_name :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- name : TBasicType TUTF8
+    IO (Ptr DOMNodeList)
+
+
+dOMElementGetElementsByTagName ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- name
+    m DOMNodeList
+dOMElementGetElementsByTagName _obj name = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    name' <- textToCString name
+    result <- webkit_dom_element_get_elements_by_tag_name _obj' name'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_elements_by_tag_name" result
+    result' <- (wrapObject DOMNodeList) result
+    touchManagedPtr _obj
+    freeMem name'
+    return result'
+
+-- method DOMElement::get_elements_by_tag_name_ns
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNodeList"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_elements_by_tag_name_ns" webkit_dom_element_get_elements_by_tag_name_ns :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- namespaceURI : TBasicType TUTF8
+    CString ->                              -- localName : TBasicType TUTF8
+    IO (Ptr DOMNodeList)
+
+
+dOMElementGetElementsByTagNameNs ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- namespaceURI
+    T.Text ->                               -- localName
+    m DOMNodeList
+dOMElementGetElementsByTagNameNs _obj namespaceURI localName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    namespaceURI' <- textToCString namespaceURI
+    localName' <- textToCString localName
+    result <- webkit_dom_element_get_elements_by_tag_name_ns _obj' namespaceURI' localName'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_elements_by_tag_name_ns" result
+    result' <- (wrapObject DOMNodeList) result
+    touchManagedPtr _obj
+    freeMem namespaceURI'
+    freeMem localName'
+    return result'
+
+-- method DOMElement::get_first_element_child
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_first_element_child" webkit_dom_element_get_first_element_child :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO (Ptr DOMElement)
+
+
+dOMElementGetFirstElementChild ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m DOMElement
+dOMElementGetFirstElementChild _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_first_element_child _obj'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_first_element_child" result
+    result' <- (newObject DOMElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_id
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_id" webkit_dom_element_get_id :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO CString
+
+
+dOMElementGetId ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMElementGetId _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_id _obj'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_id" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_inner_html
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_inner_html" webkit_dom_element_get_inner_html :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO CString
+
+
+dOMElementGetInnerHtml ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMElementGetInnerHtml _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_inner_html _obj'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_inner_html" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_last_element_child
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_last_element_child" webkit_dom_element_get_last_element_child :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO (Ptr DOMElement)
+
+
+dOMElementGetLastElementChild ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m DOMElement
+dOMElementGetLastElementChild _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_last_element_child _obj'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_last_element_child" result
+    result' <- (newObject DOMElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_next_element_sibling
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_next_element_sibling" webkit_dom_element_get_next_element_sibling :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO (Ptr DOMElement)
+
+
+dOMElementGetNextElementSibling ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m DOMElement
+dOMElementGetNextElementSibling _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_next_element_sibling _obj'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_next_element_sibling" result
+    result' <- (newObject DOMElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_offset_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TDouble
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_offset_height" webkit_dom_element_get_offset_height :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO CDouble
+
+
+dOMElementGetOffsetHeight ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m Double
+dOMElementGetOffsetHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_offset_height _obj'
+    let result' = realToFrac result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_offset_left
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TDouble
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_offset_left" webkit_dom_element_get_offset_left :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO CDouble
+
+
+dOMElementGetOffsetLeft ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m Double
+dOMElementGetOffsetLeft _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_offset_left _obj'
+    let result' = realToFrac result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_offset_parent
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_offset_parent" webkit_dom_element_get_offset_parent :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO (Ptr DOMElement)
+
+
+dOMElementGetOffsetParent ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m DOMElement
+dOMElementGetOffsetParent _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_offset_parent _obj'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_offset_parent" result
+    result' <- (newObject DOMElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_offset_top
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TDouble
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_offset_top" webkit_dom_element_get_offset_top :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO CDouble
+
+
+dOMElementGetOffsetTop ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m Double
+dOMElementGetOffsetTop _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_offset_top _obj'
+    let result' = realToFrac result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_offset_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TDouble
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_offset_width" webkit_dom_element_get_offset_width :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO CDouble
+
+
+dOMElementGetOffsetWidth ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m Double
+dOMElementGetOffsetWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_offset_width _obj'
+    let result' = realToFrac result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_outer_html
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_outer_html" webkit_dom_element_get_outer_html :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO CString
+
+
+dOMElementGetOuterHtml ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMElementGetOuterHtml _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_outer_html _obj'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_outer_html" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_previous_element_sibling
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_previous_element_sibling" webkit_dom_element_get_previous_element_sibling :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO (Ptr DOMElement)
+
+
+dOMElementGetPreviousElementSibling ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m DOMElement
+dOMElementGetPreviousElementSibling _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_previous_element_sibling _obj'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_previous_element_sibling" result
+    result' <- (newObject DOMElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_scroll_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_scroll_height" webkit_dom_element_get_scroll_height :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO Int64
+
+
+dOMElementGetScrollHeight ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMElementGetScrollHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_scroll_height _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMElement::get_scroll_left
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_scroll_left" webkit_dom_element_get_scroll_left :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO Int64
+
+
+dOMElementGetScrollLeft ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMElementGetScrollLeft _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_scroll_left _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMElement::get_scroll_top
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_scroll_top" webkit_dom_element_get_scroll_top :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO Int64
+
+
+dOMElementGetScrollTop ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMElementGetScrollTop _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_scroll_top _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMElement::get_scroll_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_scroll_width" webkit_dom_element_get_scroll_width :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO Int64
+
+
+dOMElementGetScrollWidth ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMElementGetScrollWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_scroll_width _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMElement::get_style
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMCSSStyleDeclaration"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_style" webkit_dom_element_get_style :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO (Ptr DOMCSSStyleDeclaration)
+
+
+dOMElementGetStyle ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m DOMCSSStyleDeclaration
+dOMElementGetStyle _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_style _obj'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_style" result
+    result' <- (wrapObject DOMCSSStyleDeclaration) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::get_tag_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_get_tag_name" webkit_dom_element_get_tag_name :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO CString
+
+
+dOMElementGetTagName ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMElementGetTagName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_get_tag_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_element_get_tag_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::has_attribute
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_has_attribute" webkit_dom_element_has_attribute :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- name : TBasicType TUTF8
+    IO CInt
+
+
+dOMElementHasAttribute ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- name
+    m Bool
+dOMElementHasAttribute _obj name = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    name' <- textToCString name
+    result <- webkit_dom_element_has_attribute _obj' name'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    freeMem name'
+    return result'
+
+-- method DOMElement::has_attribute_ns
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_has_attribute_ns" webkit_dom_element_has_attribute_ns :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- namespaceURI : TBasicType TUTF8
+    CString ->                              -- localName : TBasicType TUTF8
+    IO CInt
+
+
+dOMElementHasAttributeNs ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- namespaceURI
+    T.Text ->                               -- localName
+    m Bool
+dOMElementHasAttributeNs _obj namespaceURI localName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    namespaceURI' <- textToCString namespaceURI
+    localName' <- textToCString localName
+    result <- webkit_dom_element_has_attribute_ns _obj' namespaceURI' localName'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    freeMem namespaceURI'
+    freeMem localName'
+    return result'
+
+-- method DOMElement::has_attributes
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_has_attributes" webkit_dom_element_has_attributes :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    IO CInt
+
+
+dOMElementHasAttributes ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMElementHasAttributes _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_element_has_attributes _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMElement::query_selector
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selectors", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selectors", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMElement"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_query_selector" webkit_dom_element_query_selector :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- selectors : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMElement)
+
+
+dOMElementQuerySelector ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- selectors
+    m DOMElement
+dOMElementQuerySelector _obj selectors = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    selectors' <- textToCString selectors
+    onException (do
+        result <- propagateGError $ webkit_dom_element_query_selector _obj' selectors'
+        checkUnexpectedReturnNULL "webkit_dom_element_query_selector" result
+        result' <- (newObject DOMElement) result
+        touchManagedPtr _obj
+        freeMem selectors'
+        return result'
+     ) (do
+        freeMem selectors'
+     )
+
+-- method DOMElement::query_selector_all
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selectors", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "selectors", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNodeList"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_query_selector_all" webkit_dom_element_query_selector_all :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- selectors : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNodeList)
+
+
+dOMElementQuerySelectorAll ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- selectors
+    m DOMNodeList
+dOMElementQuerySelectorAll _obj selectors = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    selectors' <- textToCString selectors
+    onException (do
+        result <- propagateGError $ webkit_dom_element_query_selector_all _obj' selectors'
+        checkUnexpectedReturnNULL "webkit_dom_element_query_selector_all" result
+        result' <- (wrapObject DOMNodeList) result
+        touchManagedPtr _obj
+        freeMem selectors'
+        return result'
+     ) (do
+        freeMem selectors'
+     )
+
+-- method DOMElement::remove_attribute
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_remove_attribute" webkit_dom_element_remove_attribute :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- name : TBasicType TUTF8
+    IO ()
+
+
+dOMElementRemoveAttribute ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- name
+    m ()
+dOMElementRemoveAttribute _obj name = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    name' <- textToCString name
+    webkit_dom_element_remove_attribute _obj' name'
+    touchManagedPtr _obj
+    freeMem name'
+    return ()
+
+-- method DOMElement::remove_attribute_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "oldAttr", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "oldAttr", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMAttr"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_remove_attribute_node" webkit_dom_element_remove_attribute_node :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    Ptr DOMAttr ->                          -- oldAttr : TInterface "WebKit2WebExtension" "DOMAttr"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMAttr)
+
+
+dOMElementRemoveAttributeNode ::
+    (MonadIO m, DOMElementK a, DOMAttrK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- oldAttr
+    m DOMAttr
+dOMElementRemoveAttributeNode _obj oldAttr = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let oldAttr' = unsafeManagedPtrCastPtr oldAttr
+    onException (do
+        result <- propagateGError $ webkit_dom_element_remove_attribute_node _obj' oldAttr'
+        checkUnexpectedReturnNULL "webkit_dom_element_remove_attribute_node" result
+        result' <- (newObject DOMAttr) result
+        touchManagedPtr _obj
+        touchManagedPtr oldAttr
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMElement::remove_attribute_ns
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_remove_attribute_ns" webkit_dom_element_remove_attribute_ns :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- namespaceURI : TBasicType TUTF8
+    CString ->                              -- localName : TBasicType TUTF8
+    IO ()
+
+
+dOMElementRemoveAttributeNs ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- namespaceURI
+    T.Text ->                               -- localName
+    m ()
+dOMElementRemoveAttributeNs _obj namespaceURI localName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    namespaceURI' <- textToCString namespaceURI
+    localName' <- textToCString localName
+    webkit_dom_element_remove_attribute_ns _obj' namespaceURI' localName'
+    touchManagedPtr _obj
+    freeMem namespaceURI'
+    freeMem localName'
+    return ()
+
+-- method DOMElement::scroll_by_lines
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "lines", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "lines", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_scroll_by_lines" webkit_dom_element_scroll_by_lines :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    Int64 ->                                -- lines : TBasicType TInt64
+    IO ()
+
+
+dOMElementScrollByLines ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- lines
+    m ()
+dOMElementScrollByLines _obj lines = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_element_scroll_by_lines _obj' lines
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMElement::scroll_by_pages
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "pages", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "pages", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_scroll_by_pages" webkit_dom_element_scroll_by_pages :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    Int64 ->                                -- pages : TBasicType TInt64
+    IO ()
+
+
+dOMElementScrollByPages ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- pages
+    m ()
+dOMElementScrollByPages _obj pages = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_element_scroll_by_pages _obj' pages
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMElement::scroll_into_view
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "alignWithTop", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "alignWithTop", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_scroll_into_view" webkit_dom_element_scroll_into_view :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CInt ->                                 -- alignWithTop : TBasicType TBoolean
+    IO ()
+
+
+dOMElementScrollIntoView ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- alignWithTop
+    m ()
+dOMElementScrollIntoView _obj alignWithTop = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let alignWithTop' = (fromIntegral . fromEnum) alignWithTop
+    webkit_dom_element_scroll_into_view _obj' alignWithTop'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMElement::scroll_into_view_if_needed
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "centerIfNeeded", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "centerIfNeeded", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_scroll_into_view_if_needed" webkit_dom_element_scroll_into_view_if_needed :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CInt ->                                 -- centerIfNeeded : TBasicType TBoolean
+    IO ()
+
+
+dOMElementScrollIntoViewIfNeeded ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- centerIfNeeded
+    m ()
+dOMElementScrollIntoViewIfNeeded _obj centerIfNeeded = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let centerIfNeeded' = (fromIntegral . fromEnum) centerIfNeeded
+    webkit_dom_element_scroll_into_view_if_needed _obj' centerIfNeeded'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMElement::set_attribute
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_set_attribute" webkit_dom_element_set_attribute :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- name : TBasicType TUTF8
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMElementSetAttribute ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- name
+    T.Text ->                               -- value
+    m ()
+dOMElementSetAttribute _obj name value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    name' <- textToCString name
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_element_set_attribute _obj' name' value'
+        touchManagedPtr _obj
+        freeMem name'
+        freeMem value'
+        return ()
+     ) (do
+        freeMem name'
+        freeMem value'
+     )
+
+-- method DOMElement::set_attribute_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newAttr", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newAttr", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMAttr"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_set_attribute_node" webkit_dom_element_set_attribute_node :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    Ptr DOMAttr ->                          -- newAttr : TInterface "WebKit2WebExtension" "DOMAttr"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMAttr)
+
+
+dOMElementSetAttributeNode ::
+    (MonadIO m, DOMElementK a, DOMAttrK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- newAttr
+    m DOMAttr
+dOMElementSetAttributeNode _obj newAttr = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let newAttr' = unsafeManagedPtrCastPtr newAttr
+    onException (do
+        result <- propagateGError $ webkit_dom_element_set_attribute_node _obj' newAttr'
+        checkUnexpectedReturnNULL "webkit_dom_element_set_attribute_node" result
+        result' <- (newObject DOMAttr) result
+        touchManagedPtr _obj
+        touchManagedPtr newAttr
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMElement::set_attribute_node_ns
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newAttr", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newAttr", argType = TInterface "WebKit2WebExtension" "DOMAttr", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMAttr"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_set_attribute_node_ns" webkit_dom_element_set_attribute_node_ns :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    Ptr DOMAttr ->                          -- newAttr : TInterface "WebKit2WebExtension" "DOMAttr"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMAttr)
+
+
+dOMElementSetAttributeNodeNs ::
+    (MonadIO m, DOMElementK a, DOMAttrK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- newAttr
+    m DOMAttr
+dOMElementSetAttributeNodeNs _obj newAttr = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let newAttr' = unsafeManagedPtrCastPtr newAttr
+    onException (do
+        result <- propagateGError $ webkit_dom_element_set_attribute_node_ns _obj' newAttr'
+        checkUnexpectedReturnNULL "webkit_dom_element_set_attribute_node_ns" result
+        result' <- (newObject DOMAttr) result
+        touchManagedPtr _obj
+        touchManagedPtr newAttr
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMElement::set_attribute_ns
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "qualifiedName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "qualifiedName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_set_attribute_ns" webkit_dom_element_set_attribute_ns :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- namespaceURI : TBasicType TUTF8
+    CString ->                              -- qualifiedName : TBasicType TUTF8
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMElementSetAttributeNs ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    Maybe (T.Text) ->                       -- namespaceURI
+    T.Text ->                               -- qualifiedName
+    T.Text ->                               -- value
+    m ()
+dOMElementSetAttributeNs _obj namespaceURI qualifiedName value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    maybeNamespaceURI <- case namespaceURI of
+        Nothing -> return nullPtr
+        Just jNamespaceURI -> do
+            jNamespaceURI' <- textToCString jNamespaceURI
+            return jNamespaceURI'
+    qualifiedName' <- textToCString qualifiedName
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_element_set_attribute_ns _obj' maybeNamespaceURI qualifiedName' value'
+        touchManagedPtr _obj
+        freeMem maybeNamespaceURI
+        freeMem qualifiedName'
+        freeMem value'
+        return ()
+     ) (do
+        freeMem maybeNamespaceURI
+        freeMem qualifiedName'
+        freeMem value'
+     )
+
+-- method DOMElement::set_class_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_set_class_name" webkit_dom_element_set_class_name :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMElementSetClassName ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMElementSetClassName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_element_set_class_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMElement::set_id
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_set_id" webkit_dom_element_set_id :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMElementSetId ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMElementSetId _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_element_set_id _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMElement::set_inner_html
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_set_inner_html" webkit_dom_element_set_inner_html :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMElementSetInnerHtml ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMElementSetInnerHtml _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_element_set_inner_html _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+-- method DOMElement::set_outer_html
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_set_outer_html" webkit_dom_element_set_outer_html :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMElementSetOuterHtml ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMElementSetOuterHtml _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_element_set_outer_html _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+-- method DOMElement::set_scroll_left
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_set_scroll_left" webkit_dom_element_set_scroll_left :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMElementSetScrollLeft ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMElementSetScrollLeft _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_element_set_scroll_left _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMElement::set_scroll_top
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_element_set_scroll_top" webkit_dom_element_set_scroll_top :: 
+    Ptr DOMElement ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMElementSetScrollTop ::
+    (MonadIO m, DOMElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMElementSetScrollTop _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_element_set_scroll_top _obj' value
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMElement.hs-boot
@@ -0,0 +1,39 @@
+module GI.WebKit2WebExtension.Objects.DOMElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMElement = DOMElement (ForeignPtr DOMElement)
+instance GObject DOMElement where
+class GObject o => DOMElementK o
+instance (GObject o, IsDescendantOf DOMElement o) => DOMElementK o
+data DOMElementAttributesPropertyInfo
+data DOMElementChildElementCountPropertyInfo
+data DOMElementClassNamePropertyInfo
+data DOMElementClientHeightPropertyInfo
+data DOMElementClientLeftPropertyInfo
+data DOMElementClientTopPropertyInfo
+data DOMElementClientWidthPropertyInfo
+data DOMElementFirstElementChildPropertyInfo
+data DOMElementIdPropertyInfo
+data DOMElementInnerHtmlPropertyInfo
+data DOMElementLastElementChildPropertyInfo
+data DOMElementNextElementSiblingPropertyInfo
+data DOMElementOffsetHeightPropertyInfo
+data DOMElementOffsetLeftPropertyInfo
+data DOMElementOffsetParentPropertyInfo
+data DOMElementOffsetTopPropertyInfo
+data DOMElementOffsetWidthPropertyInfo
+data DOMElementOuterHtmlPropertyInfo
+data DOMElementPreviousElementSiblingPropertyInfo
+data DOMElementScrollHeightPropertyInfo
+data DOMElementScrollLeftPropertyInfo
+data DOMElementScrollTopPropertyInfo
+data DOMElementScrollWidthPropertyInfo
+data DOMElementStylePropertyInfo
+data DOMElementTagNamePropertyInfo
+data DOMElementWebkitRegionOversetPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMEntityReference.hs b/GI/WebKit2WebExtension/Objects/DOMEntityReference.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMEntityReference.hs
@@ -0,0 +1,58 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMEntityReference
+    ( 
+
+-- * Exported types
+    DOMEntityReference(..)                  ,
+    DOMEntityReferenceK                     ,
+    toDOMEntityReference                    ,
+    noDOMEntityReference                    ,
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMEntityReference = DOMEntityReference (ForeignPtr DOMEntityReference)
+foreign import ccall "webkit_dom_entity_reference_get_type"
+    c_webkit_dom_entity_reference_get_type :: IO GType
+
+type instance ParentTypes DOMEntityReference = DOMEntityReferenceParentTypes
+type DOMEntityReferenceParentTypes = '[DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMEntityReference where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_entity_reference_get_type
+    
+
+class GObject o => DOMEntityReferenceK o
+instance (GObject o, IsDescendantOf DOMEntityReference o) => DOMEntityReferenceK o
+
+toDOMEntityReference :: DOMEntityReferenceK o => o -> IO DOMEntityReference
+toDOMEntityReference = unsafeCastTo DOMEntityReference
+
+noDOMEntityReference :: Maybe DOMEntityReference
+noDOMEntityReference = Nothing
+
+type instance AttributeList DOMEntityReference = DOMEntityReferenceAttributeList
+type DOMEntityReferenceAttributeList = ('[ '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMEntityReference = DOMEntityReferenceSignalList
+type DOMEntityReferenceSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMEntityReference.hs-boot b/GI/WebKit2WebExtension/Objects/DOMEntityReference.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMEntityReference.hs-boot
@@ -0,0 +1,13 @@
+module GI.WebKit2WebExtension.Objects.DOMEntityReference where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMEntityReference = DOMEntityReference (ForeignPtr DOMEntityReference)
+instance GObject DOMEntityReference where
+class GObject o => DOMEntityReferenceK o
+instance (GObject o, IsDescendantOf DOMEntityReference o) => DOMEntityReferenceK o
diff --git a/GI/WebKit2WebExtension/Objects/DOMEvent.hs b/GI/WebKit2WebExtension/Objects/DOMEvent.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMEvent.hs
@@ -0,0 +1,782 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMEvent
+    ( 
+
+-- * Exported types
+    DOMEvent(..)                            ,
+    DOMEventK                               ,
+    toDOMEvent                              ,
+    noDOMEvent                              ,
+
+
+ -- * Methods
+-- ** dOMEventGetBubbles
+    dOMEventGetBubbles                      ,
+
+
+-- ** dOMEventGetCancelBubble
+    dOMEventGetCancelBubble                 ,
+
+
+-- ** dOMEventGetCancelable
+    dOMEventGetCancelable                   ,
+
+
+-- ** dOMEventGetCurrentTarget
+    dOMEventGetCurrentTarget                ,
+
+
+-- ** dOMEventGetEventPhase
+    dOMEventGetEventPhase                   ,
+
+
+-- ** dOMEventGetEventType
+    dOMEventGetEventType                    ,
+
+
+-- ** dOMEventGetReturnValue
+    dOMEventGetReturnValue                  ,
+
+
+-- ** dOMEventGetSrcElement
+    dOMEventGetSrcElement                   ,
+
+
+-- ** dOMEventGetTarget
+    dOMEventGetTarget                       ,
+
+
+-- ** dOMEventGetTimeStamp
+    dOMEventGetTimeStamp                    ,
+
+
+-- ** dOMEventInitEvent
+    dOMEventInitEvent                       ,
+
+
+-- ** dOMEventPreventDefault
+    dOMEventPreventDefault                  ,
+
+
+-- ** dOMEventSetCancelBubble
+    dOMEventSetCancelBubble                 ,
+
+
+-- ** dOMEventSetReturnValue
+    dOMEventSetReturnValue                  ,
+
+
+-- ** dOMEventStopPropagation
+    dOMEventStopPropagation                 ,
+
+
+
+
+ -- * Properties
+-- ** Bubbles
+    DOMEventBubblesPropertyInfo             ,
+    getDOMEventBubbles                      ,
+
+
+-- ** CancelBubble
+    DOMEventCancelBubblePropertyInfo        ,
+    constructDOMEventCancelBubble           ,
+    getDOMEventCancelBubble                 ,
+    setDOMEventCancelBubble                 ,
+
+
+-- ** Cancelable
+    DOMEventCancelablePropertyInfo          ,
+    getDOMEventCancelable                   ,
+
+
+-- ** CurrentTarget
+    DOMEventCurrentTargetPropertyInfo       ,
+    getDOMEventCurrentTarget                ,
+
+
+-- ** DefaultPrevented
+    DOMEventDefaultPreventedPropertyInfo    ,
+    getDOMEventDefaultPrevented             ,
+
+
+-- ** EventPhase
+    DOMEventEventPhasePropertyInfo          ,
+    getDOMEventEventPhase                   ,
+
+
+-- ** ReturnValue
+    DOMEventReturnValuePropertyInfo         ,
+    constructDOMEventReturnValue            ,
+    getDOMEventReturnValue                  ,
+    setDOMEventReturnValue                  ,
+
+
+-- ** SrcElement
+    DOMEventSrcElementPropertyInfo          ,
+    getDOMEventSrcElement                   ,
+
+
+-- ** Target
+    DOMEventTargetPropertyInfo              ,
+    getDOMEventTarget                       ,
+
+
+-- ** TimeStamp
+    DOMEventTimeStampPropertyInfo           ,
+    getDOMEventTimeStamp                    ,
+
+
+-- ** Type
+    DOMEventTypePropertyInfo                ,
+    getDOMEventType                         ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMEvent = DOMEvent (ForeignPtr DOMEvent)
+foreign import ccall "webkit_dom_event_get_type"
+    c_webkit_dom_event_get_type :: IO GType
+
+type instance ParentTypes DOMEvent = DOMEventParentTypes
+type DOMEventParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMEvent where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_event_get_type
+    
+
+class GObject o => DOMEventK o
+instance (GObject o, IsDescendantOf DOMEvent o) => DOMEventK o
+
+toDOMEvent :: DOMEventK o => o -> IO DOMEvent
+toDOMEvent = unsafeCastTo DOMEvent
+
+noDOMEvent :: Maybe DOMEvent
+noDOMEvent = Nothing
+
+-- VVV Prop "bubbles"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMEventBubbles :: (MonadIO m, DOMEventK o) => o -> m Bool
+getDOMEventBubbles obj = liftIO $ getObjectPropertyBool obj "bubbles"
+
+data DOMEventBubblesPropertyInfo
+instance AttrInfo DOMEventBubblesPropertyInfo where
+    type AttrAllowedOps DOMEventBubblesPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMEventBubblesPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMEventBubblesPropertyInfo = DOMEventK
+    type AttrGetType DOMEventBubblesPropertyInfo = Bool
+    type AttrLabel DOMEventBubblesPropertyInfo = "DOMEvent::bubbles"
+    attrGet _ = getDOMEventBubbles
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "cancel-bubble"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMEventCancelBubble :: (MonadIO m, DOMEventK o) => o -> m Bool
+getDOMEventCancelBubble obj = liftIO $ getObjectPropertyBool obj "cancel-bubble"
+
+setDOMEventCancelBubble :: (MonadIO m, DOMEventK o) => o -> Bool -> m ()
+setDOMEventCancelBubble obj val = liftIO $ setObjectPropertyBool obj "cancel-bubble" val
+
+constructDOMEventCancelBubble :: Bool -> IO ([Char], GValue)
+constructDOMEventCancelBubble val = constructObjectPropertyBool "cancel-bubble" val
+
+data DOMEventCancelBubblePropertyInfo
+instance AttrInfo DOMEventCancelBubblePropertyInfo where
+    type AttrAllowedOps DOMEventCancelBubblePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMEventCancelBubblePropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMEventCancelBubblePropertyInfo = DOMEventK
+    type AttrGetType DOMEventCancelBubblePropertyInfo = Bool
+    type AttrLabel DOMEventCancelBubblePropertyInfo = "DOMEvent::cancel-bubble"
+    attrGet _ = getDOMEventCancelBubble
+    attrSet _ = setDOMEventCancelBubble
+    attrConstruct _ = constructDOMEventCancelBubble
+
+-- VVV Prop "cancelable"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMEventCancelable :: (MonadIO m, DOMEventK o) => o -> m Bool
+getDOMEventCancelable obj = liftIO $ getObjectPropertyBool obj "cancelable"
+
+data DOMEventCancelablePropertyInfo
+instance AttrInfo DOMEventCancelablePropertyInfo where
+    type AttrAllowedOps DOMEventCancelablePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMEventCancelablePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMEventCancelablePropertyInfo = DOMEventK
+    type AttrGetType DOMEventCancelablePropertyInfo = Bool
+    type AttrLabel DOMEventCancelablePropertyInfo = "DOMEvent::cancelable"
+    attrGet _ = getDOMEventCancelable
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "current-target"
+   -- Type: TInterface "WebKit2WebExtension" "DOMEventTarget"
+   -- Flags: [PropertyReadable]
+
+getDOMEventCurrentTarget :: (MonadIO m, DOMEventK o) => o -> m DOMEventTarget
+getDOMEventCurrentTarget obj = liftIO $ getObjectPropertyObject obj "current-target" DOMEventTarget
+
+data DOMEventCurrentTargetPropertyInfo
+instance AttrInfo DOMEventCurrentTargetPropertyInfo where
+    type AttrAllowedOps DOMEventCurrentTargetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMEventCurrentTargetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMEventCurrentTargetPropertyInfo = DOMEventK
+    type AttrGetType DOMEventCurrentTargetPropertyInfo = DOMEventTarget
+    type AttrLabel DOMEventCurrentTargetPropertyInfo = "DOMEvent::current-target"
+    attrGet _ = getDOMEventCurrentTarget
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "default-prevented"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMEventDefaultPrevented :: (MonadIO m, DOMEventK o) => o -> m Bool
+getDOMEventDefaultPrevented obj = liftIO $ getObjectPropertyBool obj "default-prevented"
+
+data DOMEventDefaultPreventedPropertyInfo
+instance AttrInfo DOMEventDefaultPreventedPropertyInfo where
+    type AttrAllowedOps DOMEventDefaultPreventedPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMEventDefaultPreventedPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMEventDefaultPreventedPropertyInfo = DOMEventK
+    type AttrGetType DOMEventDefaultPreventedPropertyInfo = Bool
+    type AttrLabel DOMEventDefaultPreventedPropertyInfo = "DOMEvent::default-prevented"
+    attrGet _ = getDOMEventDefaultPrevented
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "event-phase"
+   -- Type: TBasicType TUInt32
+   -- Flags: [PropertyReadable]
+
+getDOMEventEventPhase :: (MonadIO m, DOMEventK o) => o -> m Word32
+getDOMEventEventPhase obj = liftIO $ getObjectPropertyCUInt obj "event-phase"
+
+data DOMEventEventPhasePropertyInfo
+instance AttrInfo DOMEventEventPhasePropertyInfo where
+    type AttrAllowedOps DOMEventEventPhasePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMEventEventPhasePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMEventEventPhasePropertyInfo = DOMEventK
+    type AttrGetType DOMEventEventPhasePropertyInfo = Word32
+    type AttrLabel DOMEventEventPhasePropertyInfo = "DOMEvent::event-phase"
+    attrGet _ = getDOMEventEventPhase
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "return-value"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMEventReturnValue :: (MonadIO m, DOMEventK o) => o -> m Bool
+getDOMEventReturnValue obj = liftIO $ getObjectPropertyBool obj "return-value"
+
+setDOMEventReturnValue :: (MonadIO m, DOMEventK o) => o -> Bool -> m ()
+setDOMEventReturnValue obj val = liftIO $ setObjectPropertyBool obj "return-value" val
+
+constructDOMEventReturnValue :: Bool -> IO ([Char], GValue)
+constructDOMEventReturnValue val = constructObjectPropertyBool "return-value" val
+
+data DOMEventReturnValuePropertyInfo
+instance AttrInfo DOMEventReturnValuePropertyInfo where
+    type AttrAllowedOps DOMEventReturnValuePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMEventReturnValuePropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMEventReturnValuePropertyInfo = DOMEventK
+    type AttrGetType DOMEventReturnValuePropertyInfo = Bool
+    type AttrLabel DOMEventReturnValuePropertyInfo = "DOMEvent::return-value"
+    attrGet _ = getDOMEventReturnValue
+    attrSet _ = setDOMEventReturnValue
+    attrConstruct _ = constructDOMEventReturnValue
+
+-- VVV Prop "src-element"
+   -- Type: TInterface "WebKit2WebExtension" "DOMEventTarget"
+   -- Flags: [PropertyReadable]
+
+getDOMEventSrcElement :: (MonadIO m, DOMEventK o) => o -> m DOMEventTarget
+getDOMEventSrcElement obj = liftIO $ getObjectPropertyObject obj "src-element" DOMEventTarget
+
+data DOMEventSrcElementPropertyInfo
+instance AttrInfo DOMEventSrcElementPropertyInfo where
+    type AttrAllowedOps DOMEventSrcElementPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMEventSrcElementPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMEventSrcElementPropertyInfo = DOMEventK
+    type AttrGetType DOMEventSrcElementPropertyInfo = DOMEventTarget
+    type AttrLabel DOMEventSrcElementPropertyInfo = "DOMEvent::src-element"
+    attrGet _ = getDOMEventSrcElement
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "target"
+   -- Type: TInterface "WebKit2WebExtension" "DOMEventTarget"
+   -- Flags: [PropertyReadable]
+
+getDOMEventTarget :: (MonadIO m, DOMEventK o) => o -> m DOMEventTarget
+getDOMEventTarget obj = liftIO $ getObjectPropertyObject obj "target" DOMEventTarget
+
+data DOMEventTargetPropertyInfo
+instance AttrInfo DOMEventTargetPropertyInfo where
+    type AttrAllowedOps DOMEventTargetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMEventTargetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMEventTargetPropertyInfo = DOMEventK
+    type AttrGetType DOMEventTargetPropertyInfo = DOMEventTarget
+    type AttrLabel DOMEventTargetPropertyInfo = "DOMEvent::target"
+    attrGet _ = getDOMEventTarget
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "time-stamp"
+   -- Type: TBasicType TUInt32
+   -- Flags: [PropertyReadable]
+
+getDOMEventTimeStamp :: (MonadIO m, DOMEventK o) => o -> m Word32
+getDOMEventTimeStamp obj = liftIO $ getObjectPropertyCUInt obj "time-stamp"
+
+data DOMEventTimeStampPropertyInfo
+instance AttrInfo DOMEventTimeStampPropertyInfo where
+    type AttrAllowedOps DOMEventTimeStampPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMEventTimeStampPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMEventTimeStampPropertyInfo = DOMEventK
+    type AttrGetType DOMEventTimeStampPropertyInfo = Word32
+    type AttrLabel DOMEventTimeStampPropertyInfo = "DOMEvent::time-stamp"
+    attrGet _ = getDOMEventTimeStamp
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMEventType :: (MonadIO m, DOMEventK o) => o -> m T.Text
+getDOMEventType obj = liftIO $ getObjectPropertyString obj "type"
+
+data DOMEventTypePropertyInfo
+instance AttrInfo DOMEventTypePropertyInfo where
+    type AttrAllowedOps DOMEventTypePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMEventTypePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMEventTypePropertyInfo = DOMEventK
+    type AttrGetType DOMEventTypePropertyInfo = T.Text
+    type AttrLabel DOMEventTypePropertyInfo = "DOMEvent::type"
+    attrGet _ = getDOMEventType
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMEvent = DOMEventAttributeList
+type DOMEventAttributeList = ('[ '("bubbles", DOMEventBubblesPropertyInfo), '("cancel-bubble", DOMEventCancelBubblePropertyInfo), '("cancelable", DOMEventCancelablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("current-target", DOMEventCurrentTargetPropertyInfo), '("default-prevented", DOMEventDefaultPreventedPropertyInfo), '("event-phase", DOMEventEventPhasePropertyInfo), '("return-value", DOMEventReturnValuePropertyInfo), '("src-element", DOMEventSrcElementPropertyInfo), '("target", DOMEventTargetPropertyInfo), '("time-stamp", DOMEventTimeStampPropertyInfo), '("type", DOMEventTypePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMEvent = DOMEventSignalList
+type DOMEventSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMEvent::get_bubbles
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_get_bubbles" webkit_dom_event_get_bubbles :: 
+    Ptr DOMEvent ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMEvent"
+    IO CInt
+
+
+dOMEventGetBubbles ::
+    (MonadIO m, DOMEventK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMEventGetBubbles _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_event_get_bubbles _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMEvent::get_cancel_bubble
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_get_cancel_bubble" webkit_dom_event_get_cancel_bubble :: 
+    Ptr DOMEvent ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMEvent"
+    IO CInt
+
+
+dOMEventGetCancelBubble ::
+    (MonadIO m, DOMEventK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMEventGetCancelBubble _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_event_get_cancel_bubble _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMEvent::get_cancelable
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_get_cancelable" webkit_dom_event_get_cancelable :: 
+    Ptr DOMEvent ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMEvent"
+    IO CInt
+
+
+dOMEventGetCancelable ::
+    (MonadIO m, DOMEventK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMEventGetCancelable _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_event_get_cancelable _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMEvent::get_current_target
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMEventTarget"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_get_current_target" webkit_dom_event_get_current_target :: 
+    Ptr DOMEvent ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMEvent"
+    IO (Ptr DOMEventTarget)
+
+
+dOMEventGetCurrentTarget ::
+    (MonadIO m, DOMEventK a) =>
+    a ->                                    -- _obj
+    m DOMEventTarget
+dOMEventGetCurrentTarget _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_event_get_current_target _obj'
+    checkUnexpectedReturnNULL "webkit_dom_event_get_current_target" result
+    result' <- (wrapObject DOMEventTarget) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMEvent::get_event_phase
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt16
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_get_event_phase" webkit_dom_event_get_event_phase :: 
+    Ptr DOMEvent ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMEvent"
+    IO Word16
+
+
+dOMEventGetEventPhase ::
+    (MonadIO m, DOMEventK a) =>
+    a ->                                    -- _obj
+    m Word16
+dOMEventGetEventPhase _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_event_get_event_phase _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMEvent::get_event_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_get_event_type" webkit_dom_event_get_event_type :: 
+    Ptr DOMEvent ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMEvent"
+    IO CString
+
+
+dOMEventGetEventType ::
+    (MonadIO m, DOMEventK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMEventGetEventType _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_event_get_event_type _obj'
+    checkUnexpectedReturnNULL "webkit_dom_event_get_event_type" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMEvent::get_return_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_get_return_value" webkit_dom_event_get_return_value :: 
+    Ptr DOMEvent ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMEvent"
+    IO CInt
+
+
+dOMEventGetReturnValue ::
+    (MonadIO m, DOMEventK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMEventGetReturnValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_event_get_return_value _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMEvent::get_src_element
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMEventTarget"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_get_src_element" webkit_dom_event_get_src_element :: 
+    Ptr DOMEvent ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMEvent"
+    IO (Ptr DOMEventTarget)
+
+
+dOMEventGetSrcElement ::
+    (MonadIO m, DOMEventK a) =>
+    a ->                                    -- _obj
+    m DOMEventTarget
+dOMEventGetSrcElement _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_event_get_src_element _obj'
+    checkUnexpectedReturnNULL "webkit_dom_event_get_src_element" result
+    result' <- (wrapObject DOMEventTarget) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMEvent::get_target
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMEventTarget"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_get_target" webkit_dom_event_get_target :: 
+    Ptr DOMEvent ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMEvent"
+    IO (Ptr DOMEventTarget)
+
+
+dOMEventGetTarget ::
+    (MonadIO m, DOMEventK a) =>
+    a ->                                    -- _obj
+    m DOMEventTarget
+dOMEventGetTarget _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_event_get_target _obj'
+    checkUnexpectedReturnNULL "webkit_dom_event_get_target" result
+    result' <- (wrapObject DOMEventTarget) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMEvent::get_time_stamp
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt32
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_get_time_stamp" webkit_dom_event_get_time_stamp :: 
+    Ptr DOMEvent ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMEvent"
+    IO Word32
+
+
+dOMEventGetTimeStamp ::
+    (MonadIO m, DOMEventK a) =>
+    a ->                                    -- _obj
+    m Word32
+dOMEventGetTimeStamp _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_event_get_time_stamp _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMEvent::init_event
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "eventTypeArg", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "canBubbleArg", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancelableArg", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "eventTypeArg", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "canBubbleArg", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancelableArg", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_init_event" webkit_dom_event_init_event :: 
+    Ptr DOMEvent ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMEvent"
+    CString ->                              -- eventTypeArg : TBasicType TUTF8
+    CInt ->                                 -- canBubbleArg : TBasicType TBoolean
+    CInt ->                                 -- cancelableArg : TBasicType TBoolean
+    IO ()
+
+
+dOMEventInitEvent ::
+    (MonadIO m, DOMEventK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- eventTypeArg
+    Bool ->                                 -- canBubbleArg
+    Bool ->                                 -- cancelableArg
+    m ()
+dOMEventInitEvent _obj eventTypeArg canBubbleArg cancelableArg = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    eventTypeArg' <- textToCString eventTypeArg
+    let canBubbleArg' = (fromIntegral . fromEnum) canBubbleArg
+    let cancelableArg' = (fromIntegral . fromEnum) cancelableArg
+    webkit_dom_event_init_event _obj' eventTypeArg' canBubbleArg' cancelableArg'
+    touchManagedPtr _obj
+    freeMem eventTypeArg'
+    return ()
+
+-- method DOMEvent::prevent_default
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_prevent_default" webkit_dom_event_prevent_default :: 
+    Ptr DOMEvent ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMEvent"
+    IO ()
+
+
+dOMEventPreventDefault ::
+    (MonadIO m, DOMEventK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMEventPreventDefault _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_event_prevent_default _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMEvent::set_cancel_bubble
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_set_cancel_bubble" webkit_dom_event_set_cancel_bubble :: 
+    Ptr DOMEvent ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMEvent"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMEventSetCancelBubble ::
+    (MonadIO m, DOMEventK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMEventSetCancelBubble _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_event_set_cancel_bubble _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMEvent::set_return_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_set_return_value" webkit_dom_event_set_return_value :: 
+    Ptr DOMEvent ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMEvent"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMEventSetReturnValue ::
+    (MonadIO m, DOMEventK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMEventSetReturnValue _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_event_set_return_value _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMEvent::stop_propagation
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_event_stop_propagation" webkit_dom_event_stop_propagation :: 
+    Ptr DOMEvent ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMEvent"
+    IO ()
+
+
+dOMEventStopPropagation ::
+    (MonadIO m, DOMEventK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMEventStopPropagation _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_event_stop_propagation _obj'
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMEvent.hs-boot b/GI/WebKit2WebExtension/Objects/DOMEvent.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMEvent.hs-boot
@@ -0,0 +1,24 @@
+module GI.WebKit2WebExtension.Objects.DOMEvent where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMEvent = DOMEvent (ForeignPtr DOMEvent)
+instance GObject DOMEvent where
+class GObject o => DOMEventK o
+instance (GObject o, IsDescendantOf DOMEvent o) => DOMEventK o
+data DOMEventBubblesPropertyInfo
+data DOMEventCancelBubblePropertyInfo
+data DOMEventCancelablePropertyInfo
+data DOMEventCurrentTargetPropertyInfo
+data DOMEventDefaultPreventedPropertyInfo
+data DOMEventEventPhasePropertyInfo
+data DOMEventReturnValuePropertyInfo
+data DOMEventSrcElementPropertyInfo
+data DOMEventTargetPropertyInfo
+data DOMEventTimeStampPropertyInfo
+data DOMEventTypePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMFile.hs b/GI/WebKit2WebExtension/Objects/DOMFile.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMFile.hs
@@ -0,0 +1,118 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMFile
+    ( 
+
+-- * Exported types
+    DOMFile(..)                             ,
+    DOMFileK                                ,
+    toDOMFile                               ,
+    noDOMFile                               ,
+
+
+ -- * Methods
+-- ** dOMFileGetName
+    dOMFileGetName                          ,
+
+
+
+
+ -- * Properties
+-- ** Name
+    DOMFileNamePropertyInfo                 ,
+    getDOMFileName                          ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMFile = DOMFile (ForeignPtr DOMFile)
+foreign import ccall "webkit_dom_file_get_type"
+    c_webkit_dom_file_get_type :: IO GType
+
+type instance ParentTypes DOMFile = DOMFileParentTypes
+type DOMFileParentTypes = '[DOMBlob, DOMObject, GObject.Object]
+
+instance GObject DOMFile where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_file_get_type
+    
+
+class GObject o => DOMFileK o
+instance (GObject o, IsDescendantOf DOMFile o) => DOMFileK o
+
+toDOMFile :: DOMFileK o => o -> IO DOMFile
+toDOMFile = unsafeCastTo DOMFile
+
+noDOMFile :: Maybe DOMFile
+noDOMFile = Nothing
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMFileName :: (MonadIO m, DOMFileK o) => o -> m T.Text
+getDOMFileName obj = liftIO $ getObjectPropertyString obj "name"
+
+data DOMFileNamePropertyInfo
+instance AttrInfo DOMFileNamePropertyInfo where
+    type AttrAllowedOps DOMFileNamePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMFileNamePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMFileNamePropertyInfo = DOMFileK
+    type AttrGetType DOMFileNamePropertyInfo = T.Text
+    type AttrLabel DOMFileNamePropertyInfo = "DOMFile::name"
+    attrGet _ = getDOMFileName
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMFile = DOMFileAttributeList
+type DOMFileAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("name", DOMFileNamePropertyInfo), '("size", DOMBlobSizePropertyInfo), '("type", DOMBlobTypePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMFile = DOMFileSignalList
+type DOMFileSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMFile::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMFile", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMFile", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_file_get_name" webkit_dom_file_get_name :: 
+    Ptr DOMFile ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMFile"
+    IO CString
+
+
+dOMFileGetName ::
+    (MonadIO m, DOMFileK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMFileGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_file_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_file_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMFile.hs-boot b/GI/WebKit2WebExtension/Objects/DOMFile.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMFile.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMFile where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMFile = DOMFile (ForeignPtr DOMFile)
+instance GObject DOMFile where
+class GObject o => DOMFileK o
+instance (GObject o, IsDescendantOf DOMFile o) => DOMFileK o
+data DOMFileNamePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMFileList.hs b/GI/WebKit2WebExtension/Objects/DOMFileList.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMFileList.hs
@@ -0,0 +1,147 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMFileList
+    ( 
+
+-- * Exported types
+    DOMFileList(..)                         ,
+    DOMFileListK                            ,
+    toDOMFileList                           ,
+    noDOMFileList                           ,
+
+
+ -- * Methods
+-- ** dOMFileListGetLength
+    dOMFileListGetLength                    ,
+
+
+-- ** dOMFileListItem
+    dOMFileListItem                         ,
+
+
+
+
+ -- * Properties
+-- ** Length
+    DOMFileListLengthPropertyInfo           ,
+    getDOMFileListLength                    ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMFileList = DOMFileList (ForeignPtr DOMFileList)
+foreign import ccall "webkit_dom_file_list_get_type"
+    c_webkit_dom_file_list_get_type :: IO GType
+
+type instance ParentTypes DOMFileList = DOMFileListParentTypes
+type DOMFileListParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMFileList where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_file_list_get_type
+    
+
+class GObject o => DOMFileListK o
+instance (GObject o, IsDescendantOf DOMFileList o) => DOMFileListK o
+
+toDOMFileList :: DOMFileListK o => o -> IO DOMFileList
+toDOMFileList = unsafeCastTo DOMFileList
+
+noDOMFileList :: Maybe DOMFileList
+noDOMFileList = Nothing
+
+-- VVV Prop "length"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMFileListLength :: (MonadIO m, DOMFileListK o) => o -> m Word64
+getDOMFileListLength obj = liftIO $ getObjectPropertyUInt64 obj "length"
+
+data DOMFileListLengthPropertyInfo
+instance AttrInfo DOMFileListLengthPropertyInfo where
+    type AttrAllowedOps DOMFileListLengthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMFileListLengthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMFileListLengthPropertyInfo = DOMFileListK
+    type AttrGetType DOMFileListLengthPropertyInfo = Word64
+    type AttrLabel DOMFileListLengthPropertyInfo = "DOMFileList::length"
+    attrGet _ = getDOMFileListLength
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMFileList = DOMFileListAttributeList
+type DOMFileListAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("length", DOMFileListLengthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMFileList = DOMFileListSignalList
+type DOMFileListSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMFileList::get_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMFileList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMFileList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_file_list_get_length" webkit_dom_file_list_get_length :: 
+    Ptr DOMFileList ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMFileList"
+    IO Word64
+
+
+dOMFileListGetLength ::
+    (MonadIO m, DOMFileListK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMFileListGetLength _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_file_list_get_length _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMFileList::item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMFileList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMFileList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMFile"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_file_list_item" webkit_dom_file_list_item :: 
+    Ptr DOMFileList ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMFileList"
+    Word64 ->                               -- index : TBasicType TUInt64
+    IO (Ptr DOMFile)
+
+
+dOMFileListItem ::
+    (MonadIO m, DOMFileListK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- index
+    m DOMFile
+dOMFileListItem _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_file_list_item _obj' index
+    checkUnexpectedReturnNULL "webkit_dom_file_list_item" result
+    result' <- (wrapObject DOMFile) result
+    touchManagedPtr _obj
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMFileList.hs-boot b/GI/WebKit2WebExtension/Objects/DOMFileList.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMFileList.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMFileList where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMFileList = DOMFileList (ForeignPtr DOMFileList)
+instance GObject DOMFileList where
+class GObject o => DOMFileListK o
+instance (GObject o, IsDescendantOf DOMFileList o) => DOMFileListK o
+data DOMFileListLengthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLAnchorElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLAnchorElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLAnchorElement.hs
@@ -0,0 +1,1809 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLAnchorElement
+    ( 
+
+-- * Exported types
+    DOMHTMLAnchorElement(..)                ,
+    DOMHTMLAnchorElementK                   ,
+    toDOMHTMLAnchorElement                  ,
+    noDOMHTMLAnchorElement                  ,
+
+
+ -- * Methods
+-- ** dOMHTMLAnchorElementGetCharset
+    dOMHTMLAnchorElementGetCharset          ,
+
+
+-- ** dOMHTMLAnchorElementGetCoords
+    dOMHTMLAnchorElementGetCoords           ,
+
+
+-- ** dOMHTMLAnchorElementGetHash
+    dOMHTMLAnchorElementGetHash             ,
+
+
+-- ** dOMHTMLAnchorElementGetHost
+    dOMHTMLAnchorElementGetHost             ,
+
+
+-- ** dOMHTMLAnchorElementGetHostname
+    dOMHTMLAnchorElementGetHostname         ,
+
+
+-- ** dOMHTMLAnchorElementGetHref
+    dOMHTMLAnchorElementGetHref             ,
+
+
+-- ** dOMHTMLAnchorElementGetHreflang
+    dOMHTMLAnchorElementGetHreflang         ,
+
+
+-- ** dOMHTMLAnchorElementGetName
+    dOMHTMLAnchorElementGetName             ,
+
+
+-- ** dOMHTMLAnchorElementGetPathname
+    dOMHTMLAnchorElementGetPathname         ,
+
+
+-- ** dOMHTMLAnchorElementGetPort
+    dOMHTMLAnchorElementGetPort             ,
+
+
+-- ** dOMHTMLAnchorElementGetProtocol
+    dOMHTMLAnchorElementGetProtocol         ,
+
+
+-- ** dOMHTMLAnchorElementGetRel
+    dOMHTMLAnchorElementGetRel              ,
+
+
+-- ** dOMHTMLAnchorElementGetRev
+    dOMHTMLAnchorElementGetRev              ,
+
+
+-- ** dOMHTMLAnchorElementGetSearch
+    dOMHTMLAnchorElementGetSearch           ,
+
+
+-- ** dOMHTMLAnchorElementGetShape
+    dOMHTMLAnchorElementGetShape            ,
+
+
+-- ** dOMHTMLAnchorElementGetTarget
+    dOMHTMLAnchorElementGetTarget           ,
+
+
+-- ** dOMHTMLAnchorElementGetText
+    dOMHTMLAnchorElementGetText             ,
+
+
+-- ** dOMHTMLAnchorElementGetTypeAttr
+    dOMHTMLAnchorElementGetTypeAttr         ,
+
+
+-- ** dOMHTMLAnchorElementSetCharset
+    dOMHTMLAnchorElementSetCharset          ,
+
+
+-- ** dOMHTMLAnchorElementSetCoords
+    dOMHTMLAnchorElementSetCoords           ,
+
+
+-- ** dOMHTMLAnchorElementSetHash
+    dOMHTMLAnchorElementSetHash             ,
+
+
+-- ** dOMHTMLAnchorElementSetHost
+    dOMHTMLAnchorElementSetHost             ,
+
+
+-- ** dOMHTMLAnchorElementSetHostname
+    dOMHTMLAnchorElementSetHostname         ,
+
+
+-- ** dOMHTMLAnchorElementSetHref
+    dOMHTMLAnchorElementSetHref             ,
+
+
+-- ** dOMHTMLAnchorElementSetHreflang
+    dOMHTMLAnchorElementSetHreflang         ,
+
+
+-- ** dOMHTMLAnchorElementSetName
+    dOMHTMLAnchorElementSetName             ,
+
+
+-- ** dOMHTMLAnchorElementSetPathname
+    dOMHTMLAnchorElementSetPathname         ,
+
+
+-- ** dOMHTMLAnchorElementSetPort
+    dOMHTMLAnchorElementSetPort             ,
+
+
+-- ** dOMHTMLAnchorElementSetProtocol
+    dOMHTMLAnchorElementSetProtocol         ,
+
+
+-- ** dOMHTMLAnchorElementSetRel
+    dOMHTMLAnchorElementSetRel              ,
+
+
+-- ** dOMHTMLAnchorElementSetRev
+    dOMHTMLAnchorElementSetRev              ,
+
+
+-- ** dOMHTMLAnchorElementSetSearch
+    dOMHTMLAnchorElementSetSearch           ,
+
+
+-- ** dOMHTMLAnchorElementSetShape
+    dOMHTMLAnchorElementSetShape            ,
+
+
+-- ** dOMHTMLAnchorElementSetTarget
+    dOMHTMLAnchorElementSetTarget           ,
+
+
+-- ** dOMHTMLAnchorElementSetTypeAttr
+    dOMHTMLAnchorElementSetTypeAttr         ,
+
+
+
+
+ -- * Properties
+-- ** Charset
+    DOMHTMLAnchorElementCharsetPropertyInfo ,
+    constructDOMHTMLAnchorElementCharset    ,
+    getDOMHTMLAnchorElementCharset          ,
+    setDOMHTMLAnchorElementCharset          ,
+
+
+-- ** Coords
+    DOMHTMLAnchorElementCoordsPropertyInfo  ,
+    constructDOMHTMLAnchorElementCoords     ,
+    getDOMHTMLAnchorElementCoords           ,
+    setDOMHTMLAnchorElementCoords           ,
+
+
+-- ** Download
+    DOMHTMLAnchorElementDownloadPropertyInfo,
+    constructDOMHTMLAnchorElementDownload   ,
+    getDOMHTMLAnchorElementDownload         ,
+    setDOMHTMLAnchorElementDownload         ,
+
+
+-- ** Hash
+    DOMHTMLAnchorElementHashPropertyInfo    ,
+    constructDOMHTMLAnchorElementHash       ,
+    getDOMHTMLAnchorElementHash             ,
+    setDOMHTMLAnchorElementHash             ,
+
+
+-- ** Host
+    DOMHTMLAnchorElementHostPropertyInfo    ,
+    constructDOMHTMLAnchorElementHost       ,
+    getDOMHTMLAnchorElementHost             ,
+    setDOMHTMLAnchorElementHost             ,
+
+
+-- ** Hostname
+    DOMHTMLAnchorElementHostnamePropertyInfo,
+    constructDOMHTMLAnchorElementHostname   ,
+    getDOMHTMLAnchorElementHostname         ,
+    setDOMHTMLAnchorElementHostname         ,
+
+
+-- ** Href
+    DOMHTMLAnchorElementHrefPropertyInfo    ,
+    constructDOMHTMLAnchorElementHref       ,
+    getDOMHTMLAnchorElementHref             ,
+    setDOMHTMLAnchorElementHref             ,
+
+
+-- ** Hreflang
+    DOMHTMLAnchorElementHreflangPropertyInfo,
+    constructDOMHTMLAnchorElementHreflang   ,
+    getDOMHTMLAnchorElementHreflang         ,
+    setDOMHTMLAnchorElementHreflang         ,
+
+
+-- ** Name
+    DOMHTMLAnchorElementNamePropertyInfo    ,
+    constructDOMHTMLAnchorElementName       ,
+    getDOMHTMLAnchorElementName             ,
+    setDOMHTMLAnchorElementName             ,
+
+
+-- ** Origin
+    DOMHTMLAnchorElementOriginPropertyInfo  ,
+    getDOMHTMLAnchorElementOrigin           ,
+
+
+-- ** Pathname
+    DOMHTMLAnchorElementPathnamePropertyInfo,
+    constructDOMHTMLAnchorElementPathname   ,
+    getDOMHTMLAnchorElementPathname         ,
+    setDOMHTMLAnchorElementPathname         ,
+
+
+-- ** Ping
+    DOMHTMLAnchorElementPingPropertyInfo    ,
+    constructDOMHTMLAnchorElementPing       ,
+    getDOMHTMLAnchorElementPing             ,
+    setDOMHTMLAnchorElementPing             ,
+
+
+-- ** Port
+    DOMHTMLAnchorElementPortPropertyInfo    ,
+    constructDOMHTMLAnchorElementPort       ,
+    getDOMHTMLAnchorElementPort             ,
+    setDOMHTMLAnchorElementPort             ,
+
+
+-- ** Protocol
+    DOMHTMLAnchorElementProtocolPropertyInfo,
+    constructDOMHTMLAnchorElementProtocol   ,
+    getDOMHTMLAnchorElementProtocol         ,
+    setDOMHTMLAnchorElementProtocol         ,
+
+
+-- ** Rel
+    DOMHTMLAnchorElementRelPropertyInfo     ,
+    constructDOMHTMLAnchorElementRel        ,
+    getDOMHTMLAnchorElementRel              ,
+    setDOMHTMLAnchorElementRel              ,
+
+
+-- ** Rev
+    DOMHTMLAnchorElementRevPropertyInfo     ,
+    constructDOMHTMLAnchorElementRev        ,
+    getDOMHTMLAnchorElementRev              ,
+    setDOMHTMLAnchorElementRev              ,
+
+
+-- ** Search
+    DOMHTMLAnchorElementSearchPropertyInfo  ,
+    constructDOMHTMLAnchorElementSearch     ,
+    getDOMHTMLAnchorElementSearch           ,
+    setDOMHTMLAnchorElementSearch           ,
+
+
+-- ** Shape
+    DOMHTMLAnchorElementShapePropertyInfo   ,
+    constructDOMHTMLAnchorElementShape      ,
+    getDOMHTMLAnchorElementShape            ,
+    setDOMHTMLAnchorElementShape            ,
+
+
+-- ** Target
+    DOMHTMLAnchorElementTargetPropertyInfo  ,
+    constructDOMHTMLAnchorElementTarget     ,
+    getDOMHTMLAnchorElementTarget           ,
+    setDOMHTMLAnchorElementTarget           ,
+
+
+-- ** Text
+    DOMHTMLAnchorElementTextPropertyInfo    ,
+    constructDOMHTMLAnchorElementText       ,
+    getDOMHTMLAnchorElementText             ,
+    setDOMHTMLAnchorElementText             ,
+
+
+-- ** Type
+    DOMHTMLAnchorElementTypePropertyInfo    ,
+    constructDOMHTMLAnchorElementType       ,
+    getDOMHTMLAnchorElementType             ,
+    setDOMHTMLAnchorElementType             ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLAnchorElement = DOMHTMLAnchorElement (ForeignPtr DOMHTMLAnchorElement)
+foreign import ccall "webkit_dom_html_anchor_element_get_type"
+    c_webkit_dom_html_anchor_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLAnchorElement = DOMHTMLAnchorElementParentTypes
+type DOMHTMLAnchorElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLAnchorElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_anchor_element_get_type
+    
+
+class GObject o => DOMHTMLAnchorElementK o
+instance (GObject o, IsDescendantOf DOMHTMLAnchorElement o) => DOMHTMLAnchorElementK o
+
+toDOMHTMLAnchorElement :: DOMHTMLAnchorElementK o => o -> IO DOMHTMLAnchorElement
+toDOMHTMLAnchorElement = unsafeCastTo DOMHTMLAnchorElement
+
+noDOMHTMLAnchorElement :: Maybe DOMHTMLAnchorElement
+noDOMHTMLAnchorElement = Nothing
+
+-- VVV Prop "charset"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementCharset :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementCharset obj = liftIO $ getObjectPropertyString obj "charset"
+
+setDOMHTMLAnchorElementCharset :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementCharset obj val = liftIO $ setObjectPropertyString obj "charset" val
+
+constructDOMHTMLAnchorElementCharset :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementCharset val = constructObjectPropertyString "charset" val
+
+data DOMHTMLAnchorElementCharsetPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementCharsetPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementCharsetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementCharsetPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementCharsetPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementCharsetPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementCharsetPropertyInfo = "DOMHTMLAnchorElement::charset"
+    attrGet _ = getDOMHTMLAnchorElementCharset
+    attrSet _ = setDOMHTMLAnchorElementCharset
+    attrConstruct _ = constructDOMHTMLAnchorElementCharset
+
+-- VVV Prop "coords"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementCoords :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementCoords obj = liftIO $ getObjectPropertyString obj "coords"
+
+setDOMHTMLAnchorElementCoords :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementCoords obj val = liftIO $ setObjectPropertyString obj "coords" val
+
+constructDOMHTMLAnchorElementCoords :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementCoords val = constructObjectPropertyString "coords" val
+
+data DOMHTMLAnchorElementCoordsPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementCoordsPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementCoordsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementCoordsPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementCoordsPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementCoordsPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementCoordsPropertyInfo = "DOMHTMLAnchorElement::coords"
+    attrGet _ = getDOMHTMLAnchorElementCoords
+    attrSet _ = setDOMHTMLAnchorElementCoords
+    attrConstruct _ = constructDOMHTMLAnchorElementCoords
+
+-- VVV Prop "download"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementDownload :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementDownload obj = liftIO $ getObjectPropertyString obj "download"
+
+setDOMHTMLAnchorElementDownload :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementDownload obj val = liftIO $ setObjectPropertyString obj "download" val
+
+constructDOMHTMLAnchorElementDownload :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementDownload val = constructObjectPropertyString "download" val
+
+data DOMHTMLAnchorElementDownloadPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementDownloadPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementDownloadPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementDownloadPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementDownloadPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementDownloadPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementDownloadPropertyInfo = "DOMHTMLAnchorElement::download"
+    attrGet _ = getDOMHTMLAnchorElementDownload
+    attrSet _ = setDOMHTMLAnchorElementDownload
+    attrConstruct _ = constructDOMHTMLAnchorElementDownload
+
+-- VVV Prop "hash"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementHash :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementHash obj = liftIO $ getObjectPropertyString obj "hash"
+
+setDOMHTMLAnchorElementHash :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementHash obj val = liftIO $ setObjectPropertyString obj "hash" val
+
+constructDOMHTMLAnchorElementHash :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementHash val = constructObjectPropertyString "hash" val
+
+data DOMHTMLAnchorElementHashPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementHashPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementHashPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementHashPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementHashPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementHashPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementHashPropertyInfo = "DOMHTMLAnchorElement::hash"
+    attrGet _ = getDOMHTMLAnchorElementHash
+    attrSet _ = setDOMHTMLAnchorElementHash
+    attrConstruct _ = constructDOMHTMLAnchorElementHash
+
+-- VVV Prop "host"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementHost :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementHost obj = liftIO $ getObjectPropertyString obj "host"
+
+setDOMHTMLAnchorElementHost :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementHost obj val = liftIO $ setObjectPropertyString obj "host" val
+
+constructDOMHTMLAnchorElementHost :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementHost val = constructObjectPropertyString "host" val
+
+data DOMHTMLAnchorElementHostPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementHostPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementHostPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementHostPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementHostPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementHostPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementHostPropertyInfo = "DOMHTMLAnchorElement::host"
+    attrGet _ = getDOMHTMLAnchorElementHost
+    attrSet _ = setDOMHTMLAnchorElementHost
+    attrConstruct _ = constructDOMHTMLAnchorElementHost
+
+-- VVV Prop "hostname"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementHostname :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementHostname obj = liftIO $ getObjectPropertyString obj "hostname"
+
+setDOMHTMLAnchorElementHostname :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementHostname obj val = liftIO $ setObjectPropertyString obj "hostname" val
+
+constructDOMHTMLAnchorElementHostname :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementHostname val = constructObjectPropertyString "hostname" val
+
+data DOMHTMLAnchorElementHostnamePropertyInfo
+instance AttrInfo DOMHTMLAnchorElementHostnamePropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementHostnamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementHostnamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementHostnamePropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementHostnamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementHostnamePropertyInfo = "DOMHTMLAnchorElement::hostname"
+    attrGet _ = getDOMHTMLAnchorElementHostname
+    attrSet _ = setDOMHTMLAnchorElementHostname
+    attrConstruct _ = constructDOMHTMLAnchorElementHostname
+
+-- VVV Prop "href"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementHref :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementHref obj = liftIO $ getObjectPropertyString obj "href"
+
+setDOMHTMLAnchorElementHref :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementHref obj val = liftIO $ setObjectPropertyString obj "href" val
+
+constructDOMHTMLAnchorElementHref :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementHref val = constructObjectPropertyString "href" val
+
+data DOMHTMLAnchorElementHrefPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementHrefPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementHrefPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementHrefPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementHrefPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementHrefPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementHrefPropertyInfo = "DOMHTMLAnchorElement::href"
+    attrGet _ = getDOMHTMLAnchorElementHref
+    attrSet _ = setDOMHTMLAnchorElementHref
+    attrConstruct _ = constructDOMHTMLAnchorElementHref
+
+-- VVV Prop "hreflang"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementHreflang :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementHreflang obj = liftIO $ getObjectPropertyString obj "hreflang"
+
+setDOMHTMLAnchorElementHreflang :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementHreflang obj val = liftIO $ setObjectPropertyString obj "hreflang" val
+
+constructDOMHTMLAnchorElementHreflang :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementHreflang val = constructObjectPropertyString "hreflang" val
+
+data DOMHTMLAnchorElementHreflangPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementHreflangPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementHreflangPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementHreflangPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementHreflangPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementHreflangPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementHreflangPropertyInfo = "DOMHTMLAnchorElement::hreflang"
+    attrGet _ = getDOMHTMLAnchorElementHreflang
+    attrSet _ = setDOMHTMLAnchorElementHreflang
+    attrConstruct _ = constructDOMHTMLAnchorElementHreflang
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementName :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLAnchorElementName :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLAnchorElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLAnchorElementNamePropertyInfo
+instance AttrInfo DOMHTMLAnchorElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementNamePropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementNamePropertyInfo = "DOMHTMLAnchorElement::name"
+    attrGet _ = getDOMHTMLAnchorElementName
+    attrSet _ = setDOMHTMLAnchorElementName
+    attrConstruct _ = constructDOMHTMLAnchorElementName
+
+-- VVV Prop "origin"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLAnchorElementOrigin :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementOrigin obj = liftIO $ getObjectPropertyString obj "origin"
+
+data DOMHTMLAnchorElementOriginPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementOriginPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementOriginPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementOriginPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementOriginPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementOriginPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementOriginPropertyInfo = "DOMHTMLAnchorElement::origin"
+    attrGet _ = getDOMHTMLAnchorElementOrigin
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "pathname"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementPathname :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementPathname obj = liftIO $ getObjectPropertyString obj "pathname"
+
+setDOMHTMLAnchorElementPathname :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementPathname obj val = liftIO $ setObjectPropertyString obj "pathname" val
+
+constructDOMHTMLAnchorElementPathname :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementPathname val = constructObjectPropertyString "pathname" val
+
+data DOMHTMLAnchorElementPathnamePropertyInfo
+instance AttrInfo DOMHTMLAnchorElementPathnamePropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementPathnamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementPathnamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementPathnamePropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementPathnamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementPathnamePropertyInfo = "DOMHTMLAnchorElement::pathname"
+    attrGet _ = getDOMHTMLAnchorElementPathname
+    attrSet _ = setDOMHTMLAnchorElementPathname
+    attrConstruct _ = constructDOMHTMLAnchorElementPathname
+
+-- VVV Prop "ping"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementPing :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementPing obj = liftIO $ getObjectPropertyString obj "ping"
+
+setDOMHTMLAnchorElementPing :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementPing obj val = liftIO $ setObjectPropertyString obj "ping" val
+
+constructDOMHTMLAnchorElementPing :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementPing val = constructObjectPropertyString "ping" val
+
+data DOMHTMLAnchorElementPingPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementPingPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementPingPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementPingPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementPingPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementPingPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementPingPropertyInfo = "DOMHTMLAnchorElement::ping"
+    attrGet _ = getDOMHTMLAnchorElementPing
+    attrSet _ = setDOMHTMLAnchorElementPing
+    attrConstruct _ = constructDOMHTMLAnchorElementPing
+
+-- VVV Prop "port"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementPort :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementPort obj = liftIO $ getObjectPropertyString obj "port"
+
+setDOMHTMLAnchorElementPort :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementPort obj val = liftIO $ setObjectPropertyString obj "port" val
+
+constructDOMHTMLAnchorElementPort :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementPort val = constructObjectPropertyString "port" val
+
+data DOMHTMLAnchorElementPortPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementPortPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementPortPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementPortPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementPortPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementPortPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementPortPropertyInfo = "DOMHTMLAnchorElement::port"
+    attrGet _ = getDOMHTMLAnchorElementPort
+    attrSet _ = setDOMHTMLAnchorElementPort
+    attrConstruct _ = constructDOMHTMLAnchorElementPort
+
+-- VVV Prop "protocol"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementProtocol :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementProtocol obj = liftIO $ getObjectPropertyString obj "protocol"
+
+setDOMHTMLAnchorElementProtocol :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementProtocol obj val = liftIO $ setObjectPropertyString obj "protocol" val
+
+constructDOMHTMLAnchorElementProtocol :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementProtocol val = constructObjectPropertyString "protocol" val
+
+data DOMHTMLAnchorElementProtocolPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementProtocolPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementProtocolPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementProtocolPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementProtocolPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementProtocolPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementProtocolPropertyInfo = "DOMHTMLAnchorElement::protocol"
+    attrGet _ = getDOMHTMLAnchorElementProtocol
+    attrSet _ = setDOMHTMLAnchorElementProtocol
+    attrConstruct _ = constructDOMHTMLAnchorElementProtocol
+
+-- VVV Prop "rel"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementRel :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementRel obj = liftIO $ getObjectPropertyString obj "rel"
+
+setDOMHTMLAnchorElementRel :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementRel obj val = liftIO $ setObjectPropertyString obj "rel" val
+
+constructDOMHTMLAnchorElementRel :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementRel val = constructObjectPropertyString "rel" val
+
+data DOMHTMLAnchorElementRelPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementRelPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementRelPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementRelPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementRelPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementRelPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementRelPropertyInfo = "DOMHTMLAnchorElement::rel"
+    attrGet _ = getDOMHTMLAnchorElementRel
+    attrSet _ = setDOMHTMLAnchorElementRel
+    attrConstruct _ = constructDOMHTMLAnchorElementRel
+
+-- VVV Prop "rev"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementRev :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementRev obj = liftIO $ getObjectPropertyString obj "rev"
+
+setDOMHTMLAnchorElementRev :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementRev obj val = liftIO $ setObjectPropertyString obj "rev" val
+
+constructDOMHTMLAnchorElementRev :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementRev val = constructObjectPropertyString "rev" val
+
+data DOMHTMLAnchorElementRevPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementRevPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementRevPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementRevPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementRevPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementRevPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementRevPropertyInfo = "DOMHTMLAnchorElement::rev"
+    attrGet _ = getDOMHTMLAnchorElementRev
+    attrSet _ = setDOMHTMLAnchorElementRev
+    attrConstruct _ = constructDOMHTMLAnchorElementRev
+
+-- VVV Prop "search"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementSearch :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementSearch obj = liftIO $ getObjectPropertyString obj "search"
+
+setDOMHTMLAnchorElementSearch :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementSearch obj val = liftIO $ setObjectPropertyString obj "search" val
+
+constructDOMHTMLAnchorElementSearch :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementSearch val = constructObjectPropertyString "search" val
+
+data DOMHTMLAnchorElementSearchPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementSearchPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementSearchPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementSearchPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementSearchPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementSearchPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementSearchPropertyInfo = "DOMHTMLAnchorElement::search"
+    attrGet _ = getDOMHTMLAnchorElementSearch
+    attrSet _ = setDOMHTMLAnchorElementSearch
+    attrConstruct _ = constructDOMHTMLAnchorElementSearch
+
+-- VVV Prop "shape"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementShape :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementShape obj = liftIO $ getObjectPropertyString obj "shape"
+
+setDOMHTMLAnchorElementShape :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementShape obj val = liftIO $ setObjectPropertyString obj "shape" val
+
+constructDOMHTMLAnchorElementShape :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementShape val = constructObjectPropertyString "shape" val
+
+data DOMHTMLAnchorElementShapePropertyInfo
+instance AttrInfo DOMHTMLAnchorElementShapePropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementShapePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementShapePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementShapePropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementShapePropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementShapePropertyInfo = "DOMHTMLAnchorElement::shape"
+    attrGet _ = getDOMHTMLAnchorElementShape
+    attrSet _ = setDOMHTMLAnchorElementShape
+    attrConstruct _ = constructDOMHTMLAnchorElementShape
+
+-- VVV Prop "target"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementTarget :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementTarget obj = liftIO $ getObjectPropertyString obj "target"
+
+setDOMHTMLAnchorElementTarget :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementTarget obj val = liftIO $ setObjectPropertyString obj "target" val
+
+constructDOMHTMLAnchorElementTarget :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementTarget val = constructObjectPropertyString "target" val
+
+data DOMHTMLAnchorElementTargetPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementTargetPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementTargetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementTargetPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementTargetPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementTargetPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementTargetPropertyInfo = "DOMHTMLAnchorElement::target"
+    attrGet _ = getDOMHTMLAnchorElementTarget
+    attrSet _ = setDOMHTMLAnchorElementTarget
+    attrConstruct _ = constructDOMHTMLAnchorElementTarget
+
+-- VVV Prop "text"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementText :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementText obj = liftIO $ getObjectPropertyString obj "text"
+
+setDOMHTMLAnchorElementText :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementText obj val = liftIO $ setObjectPropertyString obj "text" val
+
+constructDOMHTMLAnchorElementText :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementText val = constructObjectPropertyString "text" val
+
+data DOMHTMLAnchorElementTextPropertyInfo
+instance AttrInfo DOMHTMLAnchorElementTextPropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementTextPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementTextPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementTextPropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementTextPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementTextPropertyInfo = "DOMHTMLAnchorElement::text"
+    attrGet _ = getDOMHTMLAnchorElementText
+    attrSet _ = setDOMHTMLAnchorElementText
+    attrConstruct _ = constructDOMHTMLAnchorElementText
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAnchorElementType :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> m T.Text
+getDOMHTMLAnchorElementType obj = liftIO $ getObjectPropertyString obj "type"
+
+setDOMHTMLAnchorElementType :: (MonadIO m, DOMHTMLAnchorElementK o) => o -> T.Text -> m ()
+setDOMHTMLAnchorElementType obj val = liftIO $ setObjectPropertyString obj "type" val
+
+constructDOMHTMLAnchorElementType :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAnchorElementType val = constructObjectPropertyString "type" val
+
+data DOMHTMLAnchorElementTypePropertyInfo
+instance AttrInfo DOMHTMLAnchorElementTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLAnchorElementTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAnchorElementTypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAnchorElementTypePropertyInfo = DOMHTMLAnchorElementK
+    type AttrGetType DOMHTMLAnchorElementTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLAnchorElementTypePropertyInfo = "DOMHTMLAnchorElement::type"
+    attrGet _ = getDOMHTMLAnchorElementType
+    attrSet _ = setDOMHTMLAnchorElementType
+    attrConstruct _ = constructDOMHTMLAnchorElementType
+
+type instance AttributeList DOMHTMLAnchorElement = DOMHTMLAnchorElementAttributeList
+type DOMHTMLAnchorElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("charset", DOMHTMLAnchorElementCharsetPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("coords", DOMHTMLAnchorElementCoordsPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("download", DOMHTMLAnchorElementDownloadPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hash", DOMHTMLAnchorElementHashPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("host", DOMHTMLAnchorElementHostPropertyInfo), '("hostname", DOMHTMLAnchorElementHostnamePropertyInfo), '("href", DOMHTMLAnchorElementHrefPropertyInfo), '("hreflang", DOMHTMLAnchorElementHreflangPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("name", DOMHTMLAnchorElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("origin", DOMHTMLAnchorElementOriginPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("pathname", DOMHTMLAnchorElementPathnamePropertyInfo), '("ping", DOMHTMLAnchorElementPingPropertyInfo), '("port", DOMHTMLAnchorElementPortPropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("protocol", DOMHTMLAnchorElementProtocolPropertyInfo), '("rel", DOMHTMLAnchorElementRelPropertyInfo), '("rev", DOMHTMLAnchorElementRevPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("search", DOMHTMLAnchorElementSearchPropertyInfo), '("shape", DOMHTMLAnchorElementShapePropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("target", DOMHTMLAnchorElementTargetPropertyInfo), '("text", DOMHTMLAnchorElementTextPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLAnchorElementTypePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLAnchorElement = DOMHTMLAnchorElementSignalList
+type DOMHTMLAnchorElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLAnchorElement::get_charset
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_charset" webkit_dom_html_anchor_element_get_charset :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetCharset ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetCharset _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_charset _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_charset" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_coords
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_coords" webkit_dom_html_anchor_element_get_coords :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetCoords ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetCoords _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_coords _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_coords" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_hash
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_hash" webkit_dom_html_anchor_element_get_hash :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetHash ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetHash _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_hash _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_hash" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_host
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_host" webkit_dom_html_anchor_element_get_host :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetHost ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetHost _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_host _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_host" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_hostname
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_hostname" webkit_dom_html_anchor_element_get_hostname :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetHostname ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetHostname _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_hostname _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_hostname" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_href
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_href" webkit_dom_html_anchor_element_get_href :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetHref ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetHref _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_href _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_href" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_hreflang
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_hreflang" webkit_dom_html_anchor_element_get_hreflang :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetHreflang ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetHreflang _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_hreflang _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_hreflang" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_name" webkit_dom_html_anchor_element_get_name :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetName ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_pathname
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_pathname" webkit_dom_html_anchor_element_get_pathname :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetPathname ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetPathname _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_pathname _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_pathname" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_port
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_port" webkit_dom_html_anchor_element_get_port :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetPort ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetPort _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_port _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_port" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_protocol
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_protocol" webkit_dom_html_anchor_element_get_protocol :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetProtocol ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetProtocol _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_protocol _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_protocol" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_rel
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_rel" webkit_dom_html_anchor_element_get_rel :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetRel ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetRel _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_rel _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_rel" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_rev
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_rev" webkit_dom_html_anchor_element_get_rev :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetRev ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetRev _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_rev _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_rev" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_search
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_search" webkit_dom_html_anchor_element_get_search :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetSearch ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetSearch _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_search _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_search" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_shape
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_shape" webkit_dom_html_anchor_element_get_shape :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetShape ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetShape _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_shape _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_shape" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_target
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_target" webkit_dom_html_anchor_element_get_target :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetTarget ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetTarget _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_target _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_target" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_text" webkit_dom_html_anchor_element_get_text :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetText ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetText _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_text _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_text" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::get_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_get_type_attr" webkit_dom_html_anchor_element_get_type_attr :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    IO CString
+
+
+dOMHTMLAnchorElementGetTypeAttr ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAnchorElementGetTypeAttr _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_anchor_element_get_type_attr _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_anchor_element_get_type_attr" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAnchorElement::set_charset
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_charset" webkit_dom_html_anchor_element_set_charset :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetCharset ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetCharset _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_charset _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_coords
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_coords" webkit_dom_html_anchor_element_set_coords :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetCoords ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetCoords _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_coords _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_hash
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_hash" webkit_dom_html_anchor_element_set_hash :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetHash ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetHash _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_hash _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_host
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_host" webkit_dom_html_anchor_element_set_host :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetHost ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetHost _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_host _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_hostname
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_hostname" webkit_dom_html_anchor_element_set_hostname :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetHostname ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetHostname _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_hostname _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_href
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_href" webkit_dom_html_anchor_element_set_href :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetHref ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetHref _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_href _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_hreflang
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_hreflang" webkit_dom_html_anchor_element_set_hreflang :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetHreflang ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetHreflang _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_hreflang _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_name" webkit_dom_html_anchor_element_set_name :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetName ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_pathname
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_pathname" webkit_dom_html_anchor_element_set_pathname :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetPathname ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetPathname _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_pathname _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_port
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_port" webkit_dom_html_anchor_element_set_port :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetPort ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetPort _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_port _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_protocol
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_protocol" webkit_dom_html_anchor_element_set_protocol :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetProtocol ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetProtocol _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_protocol _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_rel
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_rel" webkit_dom_html_anchor_element_set_rel :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetRel ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetRel _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_rel _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_rev
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_rev" webkit_dom_html_anchor_element_set_rev :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetRev ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetRev _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_rev _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_search
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_search" webkit_dom_html_anchor_element_set_search :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetSearch ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetSearch _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_search _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_shape
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_shape" webkit_dom_html_anchor_element_set_shape :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetShape ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetShape _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_shape _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_target
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_target" webkit_dom_html_anchor_element_set_target :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetTarget ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetTarget _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_target _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAnchorElement::set_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_anchor_element_set_type_attr" webkit_dom_html_anchor_element_set_type_attr :: 
+    Ptr DOMHTMLAnchorElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAnchorElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAnchorElementSetTypeAttr ::
+    (MonadIO m, DOMHTMLAnchorElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAnchorElementSetTypeAttr _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_anchor_element_set_type_attr _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLAnchorElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLAnchorElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLAnchorElement.hs-boot
@@ -0,0 +1,34 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLAnchorElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLAnchorElement = DOMHTMLAnchorElement (ForeignPtr DOMHTMLAnchorElement)
+instance GObject DOMHTMLAnchorElement where
+class GObject o => DOMHTMLAnchorElementK o
+instance (GObject o, IsDescendantOf DOMHTMLAnchorElement o) => DOMHTMLAnchorElementK o
+data DOMHTMLAnchorElementCharsetPropertyInfo
+data DOMHTMLAnchorElementCoordsPropertyInfo
+data DOMHTMLAnchorElementDownloadPropertyInfo
+data DOMHTMLAnchorElementHashPropertyInfo
+data DOMHTMLAnchorElementHostPropertyInfo
+data DOMHTMLAnchorElementHostnamePropertyInfo
+data DOMHTMLAnchorElementHrefPropertyInfo
+data DOMHTMLAnchorElementHreflangPropertyInfo
+data DOMHTMLAnchorElementNamePropertyInfo
+data DOMHTMLAnchorElementOriginPropertyInfo
+data DOMHTMLAnchorElementPathnamePropertyInfo
+data DOMHTMLAnchorElementPingPropertyInfo
+data DOMHTMLAnchorElementPortPropertyInfo
+data DOMHTMLAnchorElementProtocolPropertyInfo
+data DOMHTMLAnchorElementRelPropertyInfo
+data DOMHTMLAnchorElementRevPropertyInfo
+data DOMHTMLAnchorElementSearchPropertyInfo
+data DOMHTMLAnchorElementShapePropertyInfo
+data DOMHTMLAnchorElementTargetPropertyInfo
+data DOMHTMLAnchorElementTextPropertyInfo
+data DOMHTMLAnchorElementTypePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLAppletElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLAppletElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLAppletElement.hs
@@ -0,0 +1,1088 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLAppletElement
+    ( 
+
+-- * Exported types
+    DOMHTMLAppletElement(..)                ,
+    DOMHTMLAppletElementK                   ,
+    toDOMHTMLAppletElement                  ,
+    noDOMHTMLAppletElement                  ,
+
+
+ -- * Methods
+-- ** dOMHTMLAppletElementGetAlign
+    dOMHTMLAppletElementGetAlign            ,
+
+
+-- ** dOMHTMLAppletElementGetAlt
+    dOMHTMLAppletElementGetAlt              ,
+
+
+-- ** dOMHTMLAppletElementGetArchive
+    dOMHTMLAppletElementGetArchive          ,
+
+
+-- ** dOMHTMLAppletElementGetCode
+    dOMHTMLAppletElementGetCode             ,
+
+
+-- ** dOMHTMLAppletElementGetCodeBase
+    dOMHTMLAppletElementGetCodeBase         ,
+
+
+-- ** dOMHTMLAppletElementGetHeight
+    dOMHTMLAppletElementGetHeight           ,
+
+
+-- ** dOMHTMLAppletElementGetHspace
+    dOMHTMLAppletElementGetHspace           ,
+
+
+-- ** dOMHTMLAppletElementGetName
+    dOMHTMLAppletElementGetName             ,
+
+
+-- ** dOMHTMLAppletElementGetObject
+    dOMHTMLAppletElementGetObject           ,
+
+
+-- ** dOMHTMLAppletElementGetVspace
+    dOMHTMLAppletElementGetVspace           ,
+
+
+-- ** dOMHTMLAppletElementGetWidth
+    dOMHTMLAppletElementGetWidth            ,
+
+
+-- ** dOMHTMLAppletElementSetAlign
+    dOMHTMLAppletElementSetAlign            ,
+
+
+-- ** dOMHTMLAppletElementSetAlt
+    dOMHTMLAppletElementSetAlt              ,
+
+
+-- ** dOMHTMLAppletElementSetArchive
+    dOMHTMLAppletElementSetArchive          ,
+
+
+-- ** dOMHTMLAppletElementSetCode
+    dOMHTMLAppletElementSetCode             ,
+
+
+-- ** dOMHTMLAppletElementSetCodeBase
+    dOMHTMLAppletElementSetCodeBase         ,
+
+
+-- ** dOMHTMLAppletElementSetHeight
+    dOMHTMLAppletElementSetHeight           ,
+
+
+-- ** dOMHTMLAppletElementSetHspace
+    dOMHTMLAppletElementSetHspace           ,
+
+
+-- ** dOMHTMLAppletElementSetName
+    dOMHTMLAppletElementSetName             ,
+
+
+-- ** dOMHTMLAppletElementSetObject
+    dOMHTMLAppletElementSetObject           ,
+
+
+-- ** dOMHTMLAppletElementSetVspace
+    dOMHTMLAppletElementSetVspace           ,
+
+
+-- ** dOMHTMLAppletElementSetWidth
+    dOMHTMLAppletElementSetWidth            ,
+
+
+
+
+ -- * Properties
+-- ** Align
+    DOMHTMLAppletElementAlignPropertyInfo   ,
+    constructDOMHTMLAppletElementAlign      ,
+    getDOMHTMLAppletElementAlign            ,
+    setDOMHTMLAppletElementAlign            ,
+
+
+-- ** Alt
+    DOMHTMLAppletElementAltPropertyInfo     ,
+    constructDOMHTMLAppletElementAlt        ,
+    getDOMHTMLAppletElementAlt              ,
+    setDOMHTMLAppletElementAlt              ,
+
+
+-- ** Archive
+    DOMHTMLAppletElementArchivePropertyInfo ,
+    constructDOMHTMLAppletElementArchive    ,
+    getDOMHTMLAppletElementArchive          ,
+    setDOMHTMLAppletElementArchive          ,
+
+
+-- ** Code
+    DOMHTMLAppletElementCodePropertyInfo    ,
+    constructDOMHTMLAppletElementCode       ,
+    getDOMHTMLAppletElementCode             ,
+    setDOMHTMLAppletElementCode             ,
+
+
+-- ** CodeBase
+    DOMHTMLAppletElementCodeBasePropertyInfo,
+    constructDOMHTMLAppletElementCodeBase   ,
+    getDOMHTMLAppletElementCodeBase         ,
+    setDOMHTMLAppletElementCodeBase         ,
+
+
+-- ** Height
+    DOMHTMLAppletElementHeightPropertyInfo  ,
+    constructDOMHTMLAppletElementHeight     ,
+    getDOMHTMLAppletElementHeight           ,
+    setDOMHTMLAppletElementHeight           ,
+
+
+-- ** Hspace
+    DOMHTMLAppletElementHspacePropertyInfo  ,
+    constructDOMHTMLAppletElementHspace     ,
+    getDOMHTMLAppletElementHspace           ,
+    setDOMHTMLAppletElementHspace           ,
+
+
+-- ** Name
+    DOMHTMLAppletElementNamePropertyInfo    ,
+    constructDOMHTMLAppletElementName       ,
+    getDOMHTMLAppletElementName             ,
+    setDOMHTMLAppletElementName             ,
+
+
+-- ** Object
+    DOMHTMLAppletElementObjectPropertyInfo  ,
+    constructDOMHTMLAppletElementObject     ,
+    getDOMHTMLAppletElementObject           ,
+    setDOMHTMLAppletElementObject           ,
+
+
+-- ** Vspace
+    DOMHTMLAppletElementVspacePropertyInfo  ,
+    constructDOMHTMLAppletElementVspace     ,
+    getDOMHTMLAppletElementVspace           ,
+    setDOMHTMLAppletElementVspace           ,
+
+
+-- ** Width
+    DOMHTMLAppletElementWidthPropertyInfo   ,
+    constructDOMHTMLAppletElementWidth      ,
+    getDOMHTMLAppletElementWidth            ,
+    setDOMHTMLAppletElementWidth            ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLAppletElement = DOMHTMLAppletElement (ForeignPtr DOMHTMLAppletElement)
+foreign import ccall "webkit_dom_html_applet_element_get_type"
+    c_webkit_dom_html_applet_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLAppletElement = DOMHTMLAppletElementParentTypes
+type DOMHTMLAppletElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLAppletElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_applet_element_get_type
+    
+
+class GObject o => DOMHTMLAppletElementK o
+instance (GObject o, IsDescendantOf DOMHTMLAppletElement o) => DOMHTMLAppletElementK o
+
+toDOMHTMLAppletElement :: DOMHTMLAppletElementK o => o -> IO DOMHTMLAppletElement
+toDOMHTMLAppletElement = unsafeCastTo DOMHTMLAppletElement
+
+noDOMHTMLAppletElement :: Maybe DOMHTMLAppletElement
+noDOMHTMLAppletElement = Nothing
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAppletElementAlign :: (MonadIO m, DOMHTMLAppletElementK o) => o -> m T.Text
+getDOMHTMLAppletElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLAppletElementAlign :: (MonadIO m, DOMHTMLAppletElementK o) => o -> T.Text -> m ()
+setDOMHTMLAppletElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLAppletElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAppletElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLAppletElementAlignPropertyInfo
+instance AttrInfo DOMHTMLAppletElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLAppletElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAppletElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAppletElementAlignPropertyInfo = DOMHTMLAppletElementK
+    type AttrGetType DOMHTMLAppletElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAppletElementAlignPropertyInfo = "DOMHTMLAppletElement::align"
+    attrGet _ = getDOMHTMLAppletElementAlign
+    attrSet _ = setDOMHTMLAppletElementAlign
+    attrConstruct _ = constructDOMHTMLAppletElementAlign
+
+-- VVV Prop "alt"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAppletElementAlt :: (MonadIO m, DOMHTMLAppletElementK o) => o -> m T.Text
+getDOMHTMLAppletElementAlt obj = liftIO $ getObjectPropertyString obj "alt"
+
+setDOMHTMLAppletElementAlt :: (MonadIO m, DOMHTMLAppletElementK o) => o -> T.Text -> m ()
+setDOMHTMLAppletElementAlt obj val = liftIO $ setObjectPropertyString obj "alt" val
+
+constructDOMHTMLAppletElementAlt :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAppletElementAlt val = constructObjectPropertyString "alt" val
+
+data DOMHTMLAppletElementAltPropertyInfo
+instance AttrInfo DOMHTMLAppletElementAltPropertyInfo where
+    type AttrAllowedOps DOMHTMLAppletElementAltPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAppletElementAltPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAppletElementAltPropertyInfo = DOMHTMLAppletElementK
+    type AttrGetType DOMHTMLAppletElementAltPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAppletElementAltPropertyInfo = "DOMHTMLAppletElement::alt"
+    attrGet _ = getDOMHTMLAppletElementAlt
+    attrSet _ = setDOMHTMLAppletElementAlt
+    attrConstruct _ = constructDOMHTMLAppletElementAlt
+
+-- VVV Prop "archive"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAppletElementArchive :: (MonadIO m, DOMHTMLAppletElementK o) => o -> m T.Text
+getDOMHTMLAppletElementArchive obj = liftIO $ getObjectPropertyString obj "archive"
+
+setDOMHTMLAppletElementArchive :: (MonadIO m, DOMHTMLAppletElementK o) => o -> T.Text -> m ()
+setDOMHTMLAppletElementArchive obj val = liftIO $ setObjectPropertyString obj "archive" val
+
+constructDOMHTMLAppletElementArchive :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAppletElementArchive val = constructObjectPropertyString "archive" val
+
+data DOMHTMLAppletElementArchivePropertyInfo
+instance AttrInfo DOMHTMLAppletElementArchivePropertyInfo where
+    type AttrAllowedOps DOMHTMLAppletElementArchivePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAppletElementArchivePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAppletElementArchivePropertyInfo = DOMHTMLAppletElementK
+    type AttrGetType DOMHTMLAppletElementArchivePropertyInfo = T.Text
+    type AttrLabel DOMHTMLAppletElementArchivePropertyInfo = "DOMHTMLAppletElement::archive"
+    attrGet _ = getDOMHTMLAppletElementArchive
+    attrSet _ = setDOMHTMLAppletElementArchive
+    attrConstruct _ = constructDOMHTMLAppletElementArchive
+
+-- VVV Prop "code"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAppletElementCode :: (MonadIO m, DOMHTMLAppletElementK o) => o -> m T.Text
+getDOMHTMLAppletElementCode obj = liftIO $ getObjectPropertyString obj "code"
+
+setDOMHTMLAppletElementCode :: (MonadIO m, DOMHTMLAppletElementK o) => o -> T.Text -> m ()
+setDOMHTMLAppletElementCode obj val = liftIO $ setObjectPropertyString obj "code" val
+
+constructDOMHTMLAppletElementCode :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAppletElementCode val = constructObjectPropertyString "code" val
+
+data DOMHTMLAppletElementCodePropertyInfo
+instance AttrInfo DOMHTMLAppletElementCodePropertyInfo where
+    type AttrAllowedOps DOMHTMLAppletElementCodePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAppletElementCodePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAppletElementCodePropertyInfo = DOMHTMLAppletElementK
+    type AttrGetType DOMHTMLAppletElementCodePropertyInfo = T.Text
+    type AttrLabel DOMHTMLAppletElementCodePropertyInfo = "DOMHTMLAppletElement::code"
+    attrGet _ = getDOMHTMLAppletElementCode
+    attrSet _ = setDOMHTMLAppletElementCode
+    attrConstruct _ = constructDOMHTMLAppletElementCode
+
+-- VVV Prop "code-base"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAppletElementCodeBase :: (MonadIO m, DOMHTMLAppletElementK o) => o -> m T.Text
+getDOMHTMLAppletElementCodeBase obj = liftIO $ getObjectPropertyString obj "code-base"
+
+setDOMHTMLAppletElementCodeBase :: (MonadIO m, DOMHTMLAppletElementK o) => o -> T.Text -> m ()
+setDOMHTMLAppletElementCodeBase obj val = liftIO $ setObjectPropertyString obj "code-base" val
+
+constructDOMHTMLAppletElementCodeBase :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAppletElementCodeBase val = constructObjectPropertyString "code-base" val
+
+data DOMHTMLAppletElementCodeBasePropertyInfo
+instance AttrInfo DOMHTMLAppletElementCodeBasePropertyInfo where
+    type AttrAllowedOps DOMHTMLAppletElementCodeBasePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAppletElementCodeBasePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAppletElementCodeBasePropertyInfo = DOMHTMLAppletElementK
+    type AttrGetType DOMHTMLAppletElementCodeBasePropertyInfo = T.Text
+    type AttrLabel DOMHTMLAppletElementCodeBasePropertyInfo = "DOMHTMLAppletElement::code-base"
+    attrGet _ = getDOMHTMLAppletElementCodeBase
+    attrSet _ = setDOMHTMLAppletElementCodeBase
+    attrConstruct _ = constructDOMHTMLAppletElementCodeBase
+
+-- VVV Prop "height"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAppletElementHeight :: (MonadIO m, DOMHTMLAppletElementK o) => o -> m T.Text
+getDOMHTMLAppletElementHeight obj = liftIO $ getObjectPropertyString obj "height"
+
+setDOMHTMLAppletElementHeight :: (MonadIO m, DOMHTMLAppletElementK o) => o -> T.Text -> m ()
+setDOMHTMLAppletElementHeight obj val = liftIO $ setObjectPropertyString obj "height" val
+
+constructDOMHTMLAppletElementHeight :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAppletElementHeight val = constructObjectPropertyString "height" val
+
+data DOMHTMLAppletElementHeightPropertyInfo
+instance AttrInfo DOMHTMLAppletElementHeightPropertyInfo where
+    type AttrAllowedOps DOMHTMLAppletElementHeightPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAppletElementHeightPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAppletElementHeightPropertyInfo = DOMHTMLAppletElementK
+    type AttrGetType DOMHTMLAppletElementHeightPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAppletElementHeightPropertyInfo = "DOMHTMLAppletElement::height"
+    attrGet _ = getDOMHTMLAppletElementHeight
+    attrSet _ = setDOMHTMLAppletElementHeight
+    attrConstruct _ = constructDOMHTMLAppletElementHeight
+
+-- VVV Prop "hspace"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAppletElementHspace :: (MonadIO m, DOMHTMLAppletElementK o) => o -> m Int64
+getDOMHTMLAppletElementHspace obj = liftIO $ getObjectPropertyInt64 obj "hspace"
+
+setDOMHTMLAppletElementHspace :: (MonadIO m, DOMHTMLAppletElementK o) => o -> Int64 -> m ()
+setDOMHTMLAppletElementHspace obj val = liftIO $ setObjectPropertyInt64 obj "hspace" val
+
+constructDOMHTMLAppletElementHspace :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLAppletElementHspace val = constructObjectPropertyInt64 "hspace" val
+
+data DOMHTMLAppletElementHspacePropertyInfo
+instance AttrInfo DOMHTMLAppletElementHspacePropertyInfo where
+    type AttrAllowedOps DOMHTMLAppletElementHspacePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAppletElementHspacePropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLAppletElementHspacePropertyInfo = DOMHTMLAppletElementK
+    type AttrGetType DOMHTMLAppletElementHspacePropertyInfo = Int64
+    type AttrLabel DOMHTMLAppletElementHspacePropertyInfo = "DOMHTMLAppletElement::hspace"
+    attrGet _ = getDOMHTMLAppletElementHspace
+    attrSet _ = setDOMHTMLAppletElementHspace
+    attrConstruct _ = constructDOMHTMLAppletElementHspace
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAppletElementName :: (MonadIO m, DOMHTMLAppletElementK o) => o -> m T.Text
+getDOMHTMLAppletElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLAppletElementName :: (MonadIO m, DOMHTMLAppletElementK o) => o -> T.Text -> m ()
+setDOMHTMLAppletElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLAppletElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAppletElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLAppletElementNamePropertyInfo
+instance AttrInfo DOMHTMLAppletElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLAppletElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAppletElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAppletElementNamePropertyInfo = DOMHTMLAppletElementK
+    type AttrGetType DOMHTMLAppletElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLAppletElementNamePropertyInfo = "DOMHTMLAppletElement::name"
+    attrGet _ = getDOMHTMLAppletElementName
+    attrSet _ = setDOMHTMLAppletElementName
+    attrConstruct _ = constructDOMHTMLAppletElementName
+
+-- VVV Prop "object"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAppletElementObject :: (MonadIO m, DOMHTMLAppletElementK o) => o -> m T.Text
+getDOMHTMLAppletElementObject obj = liftIO $ getObjectPropertyString obj "object"
+
+setDOMHTMLAppletElementObject :: (MonadIO m, DOMHTMLAppletElementK o) => o -> T.Text -> m ()
+setDOMHTMLAppletElementObject obj val = liftIO $ setObjectPropertyString obj "object" val
+
+constructDOMHTMLAppletElementObject :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAppletElementObject val = constructObjectPropertyString "object" val
+
+data DOMHTMLAppletElementObjectPropertyInfo
+instance AttrInfo DOMHTMLAppletElementObjectPropertyInfo where
+    type AttrAllowedOps DOMHTMLAppletElementObjectPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAppletElementObjectPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAppletElementObjectPropertyInfo = DOMHTMLAppletElementK
+    type AttrGetType DOMHTMLAppletElementObjectPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAppletElementObjectPropertyInfo = "DOMHTMLAppletElement::object"
+    attrGet _ = getDOMHTMLAppletElementObject
+    attrSet _ = setDOMHTMLAppletElementObject
+    attrConstruct _ = constructDOMHTMLAppletElementObject
+
+-- VVV Prop "vspace"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAppletElementVspace :: (MonadIO m, DOMHTMLAppletElementK o) => o -> m Int64
+getDOMHTMLAppletElementVspace obj = liftIO $ getObjectPropertyInt64 obj "vspace"
+
+setDOMHTMLAppletElementVspace :: (MonadIO m, DOMHTMLAppletElementK o) => o -> Int64 -> m ()
+setDOMHTMLAppletElementVspace obj val = liftIO $ setObjectPropertyInt64 obj "vspace" val
+
+constructDOMHTMLAppletElementVspace :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLAppletElementVspace val = constructObjectPropertyInt64 "vspace" val
+
+data DOMHTMLAppletElementVspacePropertyInfo
+instance AttrInfo DOMHTMLAppletElementVspacePropertyInfo where
+    type AttrAllowedOps DOMHTMLAppletElementVspacePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAppletElementVspacePropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLAppletElementVspacePropertyInfo = DOMHTMLAppletElementK
+    type AttrGetType DOMHTMLAppletElementVspacePropertyInfo = Int64
+    type AttrLabel DOMHTMLAppletElementVspacePropertyInfo = "DOMHTMLAppletElement::vspace"
+    attrGet _ = getDOMHTMLAppletElementVspace
+    attrSet _ = setDOMHTMLAppletElementVspace
+    attrConstruct _ = constructDOMHTMLAppletElementVspace
+
+-- VVV Prop "width"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAppletElementWidth :: (MonadIO m, DOMHTMLAppletElementK o) => o -> m T.Text
+getDOMHTMLAppletElementWidth obj = liftIO $ getObjectPropertyString obj "width"
+
+setDOMHTMLAppletElementWidth :: (MonadIO m, DOMHTMLAppletElementK o) => o -> T.Text -> m ()
+setDOMHTMLAppletElementWidth obj val = liftIO $ setObjectPropertyString obj "width" val
+
+constructDOMHTMLAppletElementWidth :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAppletElementWidth val = constructObjectPropertyString "width" val
+
+data DOMHTMLAppletElementWidthPropertyInfo
+instance AttrInfo DOMHTMLAppletElementWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLAppletElementWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAppletElementWidthPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAppletElementWidthPropertyInfo = DOMHTMLAppletElementK
+    type AttrGetType DOMHTMLAppletElementWidthPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAppletElementWidthPropertyInfo = "DOMHTMLAppletElement::width"
+    attrGet _ = getDOMHTMLAppletElementWidth
+    attrSet _ = setDOMHTMLAppletElementWidth
+    attrConstruct _ = constructDOMHTMLAppletElementWidth
+
+type instance AttributeList DOMHTMLAppletElement = DOMHTMLAppletElementAttributeList
+type DOMHTMLAppletElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLAppletElementAlignPropertyInfo), '("alt", DOMHTMLAppletElementAltPropertyInfo), '("archive", DOMHTMLAppletElementArchivePropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("code", DOMHTMLAppletElementCodePropertyInfo), '("code-base", DOMHTMLAppletElementCodeBasePropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("height", DOMHTMLAppletElementHeightPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("hspace", DOMHTMLAppletElementHspacePropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("name", DOMHTMLAppletElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("object", DOMHTMLAppletElementObjectPropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("vspace", DOMHTMLAppletElementVspacePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("width", DOMHTMLAppletElementWidthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLAppletElement = DOMHTMLAppletElementSignalList
+type DOMHTMLAppletElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLAppletElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_get_align" webkit_dom_html_applet_element_get_align :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    IO CString
+
+
+dOMHTMLAppletElementGetAlign ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAppletElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_applet_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_applet_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAppletElement::get_alt
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_get_alt" webkit_dom_html_applet_element_get_alt :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    IO CString
+
+
+dOMHTMLAppletElementGetAlt ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAppletElementGetAlt _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_applet_element_get_alt _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_applet_element_get_alt" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAppletElement::get_archive
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_get_archive" webkit_dom_html_applet_element_get_archive :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    IO CString
+
+
+dOMHTMLAppletElementGetArchive ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAppletElementGetArchive _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_applet_element_get_archive _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_applet_element_get_archive" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAppletElement::get_code
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_get_code" webkit_dom_html_applet_element_get_code :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    IO CString
+
+
+dOMHTMLAppletElementGetCode ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAppletElementGetCode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_applet_element_get_code _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_applet_element_get_code" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAppletElement::get_code_base
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_get_code_base" webkit_dom_html_applet_element_get_code_base :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    IO CString
+
+
+dOMHTMLAppletElementGetCodeBase ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAppletElementGetCodeBase _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_applet_element_get_code_base _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_applet_element_get_code_base" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAppletElement::get_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_get_height" webkit_dom_html_applet_element_get_height :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    IO CString
+
+
+dOMHTMLAppletElementGetHeight ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAppletElementGetHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_applet_element_get_height _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_applet_element_get_height" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAppletElement::get_hspace
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_get_hspace" webkit_dom_html_applet_element_get_hspace :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    IO Int64
+
+
+dOMHTMLAppletElementGetHspace ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLAppletElementGetHspace _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_applet_element_get_hspace _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLAppletElement::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_get_name" webkit_dom_html_applet_element_get_name :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    IO CString
+
+
+dOMHTMLAppletElementGetName ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAppletElementGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_applet_element_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_applet_element_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAppletElement::get_object
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_get_object" webkit_dom_html_applet_element_get_object :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    IO CString
+
+
+dOMHTMLAppletElementGetObject ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAppletElementGetObject _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_applet_element_get_object _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_applet_element_get_object" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAppletElement::get_vspace
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_get_vspace" webkit_dom_html_applet_element_get_vspace :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    IO Int64
+
+
+dOMHTMLAppletElementGetVspace ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLAppletElementGetVspace _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_applet_element_get_vspace _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLAppletElement::get_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_get_width" webkit_dom_html_applet_element_get_width :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    IO CString
+
+
+dOMHTMLAppletElementGetWidth ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAppletElementGetWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_applet_element_get_width _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_applet_element_get_width" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAppletElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_set_align" webkit_dom_html_applet_element_set_align :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAppletElementSetAlign ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAppletElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_applet_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAppletElement::set_alt
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_set_alt" webkit_dom_html_applet_element_set_alt :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAppletElementSetAlt ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAppletElementSetAlt _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_applet_element_set_alt _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAppletElement::set_archive
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_set_archive" webkit_dom_html_applet_element_set_archive :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAppletElementSetArchive ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAppletElementSetArchive _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_applet_element_set_archive _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAppletElement::set_code
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_set_code" webkit_dom_html_applet_element_set_code :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAppletElementSetCode ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAppletElementSetCode _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_applet_element_set_code _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAppletElement::set_code_base
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_set_code_base" webkit_dom_html_applet_element_set_code_base :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAppletElementSetCodeBase ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAppletElementSetCodeBase _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_applet_element_set_code_base _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAppletElement::set_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_set_height" webkit_dom_html_applet_element_set_height :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAppletElementSetHeight ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAppletElementSetHeight _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_applet_element_set_height _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAppletElement::set_hspace
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_set_hspace" webkit_dom_html_applet_element_set_hspace :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLAppletElementSetHspace ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLAppletElementSetHspace _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_applet_element_set_hspace _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLAppletElement::set_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_set_name" webkit_dom_html_applet_element_set_name :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAppletElementSetName ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAppletElementSetName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_applet_element_set_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAppletElement::set_object
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_set_object" webkit_dom_html_applet_element_set_object :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAppletElementSetObject ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAppletElementSetObject _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_applet_element_set_object _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAppletElement::set_vspace
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_set_vspace" webkit_dom_html_applet_element_set_vspace :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLAppletElementSetVspace ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLAppletElementSetVspace _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_applet_element_set_vspace _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLAppletElement::set_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAppletElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_applet_element_set_width" webkit_dom_html_applet_element_set_width :: 
+    Ptr DOMHTMLAppletElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAppletElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAppletElementSetWidth ::
+    (MonadIO m, DOMHTMLAppletElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAppletElementSetWidth _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_applet_element_set_width _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLAppletElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLAppletElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLAppletElement.hs-boot
@@ -0,0 +1,24 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLAppletElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLAppletElement = DOMHTMLAppletElement (ForeignPtr DOMHTMLAppletElement)
+instance GObject DOMHTMLAppletElement where
+class GObject o => DOMHTMLAppletElementK o
+instance (GObject o, IsDescendantOf DOMHTMLAppletElement o) => DOMHTMLAppletElementK o
+data DOMHTMLAppletElementAlignPropertyInfo
+data DOMHTMLAppletElementAltPropertyInfo
+data DOMHTMLAppletElementArchivePropertyInfo
+data DOMHTMLAppletElementCodePropertyInfo
+data DOMHTMLAppletElementCodeBasePropertyInfo
+data DOMHTMLAppletElementHeightPropertyInfo
+data DOMHTMLAppletElementHspacePropertyInfo
+data DOMHTMLAppletElementNamePropertyInfo
+data DOMHTMLAppletElementObjectPropertyInfo
+data DOMHTMLAppletElementVspacePropertyInfo
+data DOMHTMLAppletElementWidthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLAreaElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLAreaElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLAreaElement.hs
@@ -0,0 +1,1065 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLAreaElement
+    ( 
+
+-- * Exported types
+    DOMHTMLAreaElement(..)                  ,
+    DOMHTMLAreaElementK                     ,
+    toDOMHTMLAreaElement                    ,
+    noDOMHTMLAreaElement                    ,
+
+
+ -- * Methods
+-- ** dOMHTMLAreaElementGetAlt
+    dOMHTMLAreaElementGetAlt                ,
+
+
+-- ** dOMHTMLAreaElementGetCoords
+    dOMHTMLAreaElementGetCoords             ,
+
+
+-- ** dOMHTMLAreaElementGetHash
+    dOMHTMLAreaElementGetHash               ,
+
+
+-- ** dOMHTMLAreaElementGetHost
+    dOMHTMLAreaElementGetHost               ,
+
+
+-- ** dOMHTMLAreaElementGetHostname
+    dOMHTMLAreaElementGetHostname           ,
+
+
+-- ** dOMHTMLAreaElementGetHref
+    dOMHTMLAreaElementGetHref               ,
+
+
+-- ** dOMHTMLAreaElementGetNoHref
+    dOMHTMLAreaElementGetNoHref             ,
+
+
+-- ** dOMHTMLAreaElementGetPathname
+    dOMHTMLAreaElementGetPathname           ,
+
+
+-- ** dOMHTMLAreaElementGetPort
+    dOMHTMLAreaElementGetPort               ,
+
+
+-- ** dOMHTMLAreaElementGetProtocol
+    dOMHTMLAreaElementGetProtocol           ,
+
+
+-- ** dOMHTMLAreaElementGetSearch
+    dOMHTMLAreaElementGetSearch             ,
+
+
+-- ** dOMHTMLAreaElementGetShape
+    dOMHTMLAreaElementGetShape              ,
+
+
+-- ** dOMHTMLAreaElementGetTarget
+    dOMHTMLAreaElementGetTarget             ,
+
+
+-- ** dOMHTMLAreaElementSetAlt
+    dOMHTMLAreaElementSetAlt                ,
+
+
+-- ** dOMHTMLAreaElementSetCoords
+    dOMHTMLAreaElementSetCoords             ,
+
+
+-- ** dOMHTMLAreaElementSetHref
+    dOMHTMLAreaElementSetHref               ,
+
+
+-- ** dOMHTMLAreaElementSetNoHref
+    dOMHTMLAreaElementSetNoHref             ,
+
+
+-- ** dOMHTMLAreaElementSetShape
+    dOMHTMLAreaElementSetShape              ,
+
+
+-- ** dOMHTMLAreaElementSetTarget
+    dOMHTMLAreaElementSetTarget             ,
+
+
+
+
+ -- * Properties
+-- ** Alt
+    DOMHTMLAreaElementAltPropertyInfo       ,
+    constructDOMHTMLAreaElementAlt          ,
+    getDOMHTMLAreaElementAlt                ,
+    setDOMHTMLAreaElementAlt                ,
+
+
+-- ** Coords
+    DOMHTMLAreaElementCoordsPropertyInfo    ,
+    constructDOMHTMLAreaElementCoords       ,
+    getDOMHTMLAreaElementCoords             ,
+    setDOMHTMLAreaElementCoords             ,
+
+
+-- ** Hash
+    DOMHTMLAreaElementHashPropertyInfo      ,
+    getDOMHTMLAreaElementHash               ,
+
+
+-- ** Host
+    DOMHTMLAreaElementHostPropertyInfo      ,
+    getDOMHTMLAreaElementHost               ,
+
+
+-- ** Hostname
+    DOMHTMLAreaElementHostnamePropertyInfo  ,
+    getDOMHTMLAreaElementHostname           ,
+
+
+-- ** Href
+    DOMHTMLAreaElementHrefPropertyInfo      ,
+    constructDOMHTMLAreaElementHref         ,
+    getDOMHTMLAreaElementHref               ,
+    setDOMHTMLAreaElementHref               ,
+
+
+-- ** NoHref
+    DOMHTMLAreaElementNoHrefPropertyInfo    ,
+    constructDOMHTMLAreaElementNoHref       ,
+    getDOMHTMLAreaElementNoHref             ,
+    setDOMHTMLAreaElementNoHref             ,
+
+
+-- ** Pathname
+    DOMHTMLAreaElementPathnamePropertyInfo  ,
+    getDOMHTMLAreaElementPathname           ,
+
+
+-- ** Ping
+    DOMHTMLAreaElementPingPropertyInfo      ,
+    constructDOMHTMLAreaElementPing         ,
+    getDOMHTMLAreaElementPing               ,
+    setDOMHTMLAreaElementPing               ,
+
+
+-- ** Port
+    DOMHTMLAreaElementPortPropertyInfo      ,
+    getDOMHTMLAreaElementPort               ,
+
+
+-- ** Protocol
+    DOMHTMLAreaElementProtocolPropertyInfo  ,
+    getDOMHTMLAreaElementProtocol           ,
+
+
+-- ** Rel
+    DOMHTMLAreaElementRelPropertyInfo       ,
+    constructDOMHTMLAreaElementRel          ,
+    getDOMHTMLAreaElementRel                ,
+    setDOMHTMLAreaElementRel                ,
+
+
+-- ** Search
+    DOMHTMLAreaElementSearchPropertyInfo    ,
+    getDOMHTMLAreaElementSearch             ,
+
+
+-- ** Shape
+    DOMHTMLAreaElementShapePropertyInfo     ,
+    constructDOMHTMLAreaElementShape        ,
+    getDOMHTMLAreaElementShape              ,
+    setDOMHTMLAreaElementShape              ,
+
+
+-- ** Target
+    DOMHTMLAreaElementTargetPropertyInfo    ,
+    constructDOMHTMLAreaElementTarget       ,
+    getDOMHTMLAreaElementTarget             ,
+    setDOMHTMLAreaElementTarget             ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLAreaElement = DOMHTMLAreaElement (ForeignPtr DOMHTMLAreaElement)
+foreign import ccall "webkit_dom_html_area_element_get_type"
+    c_webkit_dom_html_area_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLAreaElement = DOMHTMLAreaElementParentTypes
+type DOMHTMLAreaElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLAreaElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_area_element_get_type
+    
+
+class GObject o => DOMHTMLAreaElementK o
+instance (GObject o, IsDescendantOf DOMHTMLAreaElement o) => DOMHTMLAreaElementK o
+
+toDOMHTMLAreaElement :: DOMHTMLAreaElementK o => o -> IO DOMHTMLAreaElement
+toDOMHTMLAreaElement = unsafeCastTo DOMHTMLAreaElement
+
+noDOMHTMLAreaElement :: Maybe DOMHTMLAreaElement
+noDOMHTMLAreaElement = Nothing
+
+-- VVV Prop "alt"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAreaElementAlt :: (MonadIO m, DOMHTMLAreaElementK o) => o -> m T.Text
+getDOMHTMLAreaElementAlt obj = liftIO $ getObjectPropertyString obj "alt"
+
+setDOMHTMLAreaElementAlt :: (MonadIO m, DOMHTMLAreaElementK o) => o -> T.Text -> m ()
+setDOMHTMLAreaElementAlt obj val = liftIO $ setObjectPropertyString obj "alt" val
+
+constructDOMHTMLAreaElementAlt :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAreaElementAlt val = constructObjectPropertyString "alt" val
+
+data DOMHTMLAreaElementAltPropertyInfo
+instance AttrInfo DOMHTMLAreaElementAltPropertyInfo where
+    type AttrAllowedOps DOMHTMLAreaElementAltPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAreaElementAltPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAreaElementAltPropertyInfo = DOMHTMLAreaElementK
+    type AttrGetType DOMHTMLAreaElementAltPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAreaElementAltPropertyInfo = "DOMHTMLAreaElement::alt"
+    attrGet _ = getDOMHTMLAreaElementAlt
+    attrSet _ = setDOMHTMLAreaElementAlt
+    attrConstruct _ = constructDOMHTMLAreaElementAlt
+
+-- VVV Prop "coords"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAreaElementCoords :: (MonadIO m, DOMHTMLAreaElementK o) => o -> m T.Text
+getDOMHTMLAreaElementCoords obj = liftIO $ getObjectPropertyString obj "coords"
+
+setDOMHTMLAreaElementCoords :: (MonadIO m, DOMHTMLAreaElementK o) => o -> T.Text -> m ()
+setDOMHTMLAreaElementCoords obj val = liftIO $ setObjectPropertyString obj "coords" val
+
+constructDOMHTMLAreaElementCoords :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAreaElementCoords val = constructObjectPropertyString "coords" val
+
+data DOMHTMLAreaElementCoordsPropertyInfo
+instance AttrInfo DOMHTMLAreaElementCoordsPropertyInfo where
+    type AttrAllowedOps DOMHTMLAreaElementCoordsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAreaElementCoordsPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAreaElementCoordsPropertyInfo = DOMHTMLAreaElementK
+    type AttrGetType DOMHTMLAreaElementCoordsPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAreaElementCoordsPropertyInfo = "DOMHTMLAreaElement::coords"
+    attrGet _ = getDOMHTMLAreaElementCoords
+    attrSet _ = setDOMHTMLAreaElementCoords
+    attrConstruct _ = constructDOMHTMLAreaElementCoords
+
+-- VVV Prop "hash"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLAreaElementHash :: (MonadIO m, DOMHTMLAreaElementK o) => o -> m T.Text
+getDOMHTMLAreaElementHash obj = liftIO $ getObjectPropertyString obj "hash"
+
+data DOMHTMLAreaElementHashPropertyInfo
+instance AttrInfo DOMHTMLAreaElementHashPropertyInfo where
+    type AttrAllowedOps DOMHTMLAreaElementHashPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAreaElementHashPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLAreaElementHashPropertyInfo = DOMHTMLAreaElementK
+    type AttrGetType DOMHTMLAreaElementHashPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAreaElementHashPropertyInfo = "DOMHTMLAreaElement::hash"
+    attrGet _ = getDOMHTMLAreaElementHash
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "host"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLAreaElementHost :: (MonadIO m, DOMHTMLAreaElementK o) => o -> m T.Text
+getDOMHTMLAreaElementHost obj = liftIO $ getObjectPropertyString obj "host"
+
+data DOMHTMLAreaElementHostPropertyInfo
+instance AttrInfo DOMHTMLAreaElementHostPropertyInfo where
+    type AttrAllowedOps DOMHTMLAreaElementHostPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAreaElementHostPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLAreaElementHostPropertyInfo = DOMHTMLAreaElementK
+    type AttrGetType DOMHTMLAreaElementHostPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAreaElementHostPropertyInfo = "DOMHTMLAreaElement::host"
+    attrGet _ = getDOMHTMLAreaElementHost
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "hostname"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLAreaElementHostname :: (MonadIO m, DOMHTMLAreaElementK o) => o -> m T.Text
+getDOMHTMLAreaElementHostname obj = liftIO $ getObjectPropertyString obj "hostname"
+
+data DOMHTMLAreaElementHostnamePropertyInfo
+instance AttrInfo DOMHTMLAreaElementHostnamePropertyInfo where
+    type AttrAllowedOps DOMHTMLAreaElementHostnamePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAreaElementHostnamePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLAreaElementHostnamePropertyInfo = DOMHTMLAreaElementK
+    type AttrGetType DOMHTMLAreaElementHostnamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLAreaElementHostnamePropertyInfo = "DOMHTMLAreaElement::hostname"
+    attrGet _ = getDOMHTMLAreaElementHostname
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "href"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAreaElementHref :: (MonadIO m, DOMHTMLAreaElementK o) => o -> m T.Text
+getDOMHTMLAreaElementHref obj = liftIO $ getObjectPropertyString obj "href"
+
+setDOMHTMLAreaElementHref :: (MonadIO m, DOMHTMLAreaElementK o) => o -> T.Text -> m ()
+setDOMHTMLAreaElementHref obj val = liftIO $ setObjectPropertyString obj "href" val
+
+constructDOMHTMLAreaElementHref :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAreaElementHref val = constructObjectPropertyString "href" val
+
+data DOMHTMLAreaElementHrefPropertyInfo
+instance AttrInfo DOMHTMLAreaElementHrefPropertyInfo where
+    type AttrAllowedOps DOMHTMLAreaElementHrefPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAreaElementHrefPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAreaElementHrefPropertyInfo = DOMHTMLAreaElementK
+    type AttrGetType DOMHTMLAreaElementHrefPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAreaElementHrefPropertyInfo = "DOMHTMLAreaElement::href"
+    attrGet _ = getDOMHTMLAreaElementHref
+    attrSet _ = setDOMHTMLAreaElementHref
+    attrConstruct _ = constructDOMHTMLAreaElementHref
+
+-- VVV Prop "no-href"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAreaElementNoHref :: (MonadIO m, DOMHTMLAreaElementK o) => o -> m Bool
+getDOMHTMLAreaElementNoHref obj = liftIO $ getObjectPropertyBool obj "no-href"
+
+setDOMHTMLAreaElementNoHref :: (MonadIO m, DOMHTMLAreaElementK o) => o -> Bool -> m ()
+setDOMHTMLAreaElementNoHref obj val = liftIO $ setObjectPropertyBool obj "no-href" val
+
+constructDOMHTMLAreaElementNoHref :: Bool -> IO ([Char], GValue)
+constructDOMHTMLAreaElementNoHref val = constructObjectPropertyBool "no-href" val
+
+data DOMHTMLAreaElementNoHrefPropertyInfo
+instance AttrInfo DOMHTMLAreaElementNoHrefPropertyInfo where
+    type AttrAllowedOps DOMHTMLAreaElementNoHrefPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAreaElementNoHrefPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLAreaElementNoHrefPropertyInfo = DOMHTMLAreaElementK
+    type AttrGetType DOMHTMLAreaElementNoHrefPropertyInfo = Bool
+    type AttrLabel DOMHTMLAreaElementNoHrefPropertyInfo = "DOMHTMLAreaElement::no-href"
+    attrGet _ = getDOMHTMLAreaElementNoHref
+    attrSet _ = setDOMHTMLAreaElementNoHref
+    attrConstruct _ = constructDOMHTMLAreaElementNoHref
+
+-- VVV Prop "pathname"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLAreaElementPathname :: (MonadIO m, DOMHTMLAreaElementK o) => o -> m T.Text
+getDOMHTMLAreaElementPathname obj = liftIO $ getObjectPropertyString obj "pathname"
+
+data DOMHTMLAreaElementPathnamePropertyInfo
+instance AttrInfo DOMHTMLAreaElementPathnamePropertyInfo where
+    type AttrAllowedOps DOMHTMLAreaElementPathnamePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAreaElementPathnamePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLAreaElementPathnamePropertyInfo = DOMHTMLAreaElementK
+    type AttrGetType DOMHTMLAreaElementPathnamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLAreaElementPathnamePropertyInfo = "DOMHTMLAreaElement::pathname"
+    attrGet _ = getDOMHTMLAreaElementPathname
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "ping"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAreaElementPing :: (MonadIO m, DOMHTMLAreaElementK o) => o -> m T.Text
+getDOMHTMLAreaElementPing obj = liftIO $ getObjectPropertyString obj "ping"
+
+setDOMHTMLAreaElementPing :: (MonadIO m, DOMHTMLAreaElementK o) => o -> T.Text -> m ()
+setDOMHTMLAreaElementPing obj val = liftIO $ setObjectPropertyString obj "ping" val
+
+constructDOMHTMLAreaElementPing :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAreaElementPing val = constructObjectPropertyString "ping" val
+
+data DOMHTMLAreaElementPingPropertyInfo
+instance AttrInfo DOMHTMLAreaElementPingPropertyInfo where
+    type AttrAllowedOps DOMHTMLAreaElementPingPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAreaElementPingPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAreaElementPingPropertyInfo = DOMHTMLAreaElementK
+    type AttrGetType DOMHTMLAreaElementPingPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAreaElementPingPropertyInfo = "DOMHTMLAreaElement::ping"
+    attrGet _ = getDOMHTMLAreaElementPing
+    attrSet _ = setDOMHTMLAreaElementPing
+    attrConstruct _ = constructDOMHTMLAreaElementPing
+
+-- VVV Prop "port"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLAreaElementPort :: (MonadIO m, DOMHTMLAreaElementK o) => o -> m T.Text
+getDOMHTMLAreaElementPort obj = liftIO $ getObjectPropertyString obj "port"
+
+data DOMHTMLAreaElementPortPropertyInfo
+instance AttrInfo DOMHTMLAreaElementPortPropertyInfo where
+    type AttrAllowedOps DOMHTMLAreaElementPortPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAreaElementPortPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLAreaElementPortPropertyInfo = DOMHTMLAreaElementK
+    type AttrGetType DOMHTMLAreaElementPortPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAreaElementPortPropertyInfo = "DOMHTMLAreaElement::port"
+    attrGet _ = getDOMHTMLAreaElementPort
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "protocol"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLAreaElementProtocol :: (MonadIO m, DOMHTMLAreaElementK o) => o -> m T.Text
+getDOMHTMLAreaElementProtocol obj = liftIO $ getObjectPropertyString obj "protocol"
+
+data DOMHTMLAreaElementProtocolPropertyInfo
+instance AttrInfo DOMHTMLAreaElementProtocolPropertyInfo where
+    type AttrAllowedOps DOMHTMLAreaElementProtocolPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAreaElementProtocolPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLAreaElementProtocolPropertyInfo = DOMHTMLAreaElementK
+    type AttrGetType DOMHTMLAreaElementProtocolPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAreaElementProtocolPropertyInfo = "DOMHTMLAreaElement::protocol"
+    attrGet _ = getDOMHTMLAreaElementProtocol
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "rel"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAreaElementRel :: (MonadIO m, DOMHTMLAreaElementK o) => o -> m T.Text
+getDOMHTMLAreaElementRel obj = liftIO $ getObjectPropertyString obj "rel"
+
+setDOMHTMLAreaElementRel :: (MonadIO m, DOMHTMLAreaElementK o) => o -> T.Text -> m ()
+setDOMHTMLAreaElementRel obj val = liftIO $ setObjectPropertyString obj "rel" val
+
+constructDOMHTMLAreaElementRel :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAreaElementRel val = constructObjectPropertyString "rel" val
+
+data DOMHTMLAreaElementRelPropertyInfo
+instance AttrInfo DOMHTMLAreaElementRelPropertyInfo where
+    type AttrAllowedOps DOMHTMLAreaElementRelPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAreaElementRelPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAreaElementRelPropertyInfo = DOMHTMLAreaElementK
+    type AttrGetType DOMHTMLAreaElementRelPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAreaElementRelPropertyInfo = "DOMHTMLAreaElement::rel"
+    attrGet _ = getDOMHTMLAreaElementRel
+    attrSet _ = setDOMHTMLAreaElementRel
+    attrConstruct _ = constructDOMHTMLAreaElementRel
+
+-- VVV Prop "search"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLAreaElementSearch :: (MonadIO m, DOMHTMLAreaElementK o) => o -> m T.Text
+getDOMHTMLAreaElementSearch obj = liftIO $ getObjectPropertyString obj "search"
+
+data DOMHTMLAreaElementSearchPropertyInfo
+instance AttrInfo DOMHTMLAreaElementSearchPropertyInfo where
+    type AttrAllowedOps DOMHTMLAreaElementSearchPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAreaElementSearchPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLAreaElementSearchPropertyInfo = DOMHTMLAreaElementK
+    type AttrGetType DOMHTMLAreaElementSearchPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAreaElementSearchPropertyInfo = "DOMHTMLAreaElement::search"
+    attrGet _ = getDOMHTMLAreaElementSearch
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "shape"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAreaElementShape :: (MonadIO m, DOMHTMLAreaElementK o) => o -> m T.Text
+getDOMHTMLAreaElementShape obj = liftIO $ getObjectPropertyString obj "shape"
+
+setDOMHTMLAreaElementShape :: (MonadIO m, DOMHTMLAreaElementK o) => o -> T.Text -> m ()
+setDOMHTMLAreaElementShape obj val = liftIO $ setObjectPropertyString obj "shape" val
+
+constructDOMHTMLAreaElementShape :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAreaElementShape val = constructObjectPropertyString "shape" val
+
+data DOMHTMLAreaElementShapePropertyInfo
+instance AttrInfo DOMHTMLAreaElementShapePropertyInfo where
+    type AttrAllowedOps DOMHTMLAreaElementShapePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAreaElementShapePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAreaElementShapePropertyInfo = DOMHTMLAreaElementK
+    type AttrGetType DOMHTMLAreaElementShapePropertyInfo = T.Text
+    type AttrLabel DOMHTMLAreaElementShapePropertyInfo = "DOMHTMLAreaElement::shape"
+    attrGet _ = getDOMHTMLAreaElementShape
+    attrSet _ = setDOMHTMLAreaElementShape
+    attrConstruct _ = constructDOMHTMLAreaElementShape
+
+-- VVV Prop "target"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLAreaElementTarget :: (MonadIO m, DOMHTMLAreaElementK o) => o -> m T.Text
+getDOMHTMLAreaElementTarget obj = liftIO $ getObjectPropertyString obj "target"
+
+setDOMHTMLAreaElementTarget :: (MonadIO m, DOMHTMLAreaElementK o) => o -> T.Text -> m ()
+setDOMHTMLAreaElementTarget obj val = liftIO $ setObjectPropertyString obj "target" val
+
+constructDOMHTMLAreaElementTarget :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLAreaElementTarget val = constructObjectPropertyString "target" val
+
+data DOMHTMLAreaElementTargetPropertyInfo
+instance AttrInfo DOMHTMLAreaElementTargetPropertyInfo where
+    type AttrAllowedOps DOMHTMLAreaElementTargetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLAreaElementTargetPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLAreaElementTargetPropertyInfo = DOMHTMLAreaElementK
+    type AttrGetType DOMHTMLAreaElementTargetPropertyInfo = T.Text
+    type AttrLabel DOMHTMLAreaElementTargetPropertyInfo = "DOMHTMLAreaElement::target"
+    attrGet _ = getDOMHTMLAreaElementTarget
+    attrSet _ = setDOMHTMLAreaElementTarget
+    attrConstruct _ = constructDOMHTMLAreaElementTarget
+
+type instance AttributeList DOMHTMLAreaElement = DOMHTMLAreaElementAttributeList
+type DOMHTMLAreaElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("alt", DOMHTMLAreaElementAltPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("coords", DOMHTMLAreaElementCoordsPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hash", DOMHTMLAreaElementHashPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("host", DOMHTMLAreaElementHostPropertyInfo), '("hostname", DOMHTMLAreaElementHostnamePropertyInfo), '("href", DOMHTMLAreaElementHrefPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("no-href", DOMHTMLAreaElementNoHrefPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("pathname", DOMHTMLAreaElementPathnamePropertyInfo), '("ping", DOMHTMLAreaElementPingPropertyInfo), '("port", DOMHTMLAreaElementPortPropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("protocol", DOMHTMLAreaElementProtocolPropertyInfo), '("rel", DOMHTMLAreaElementRelPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("search", DOMHTMLAreaElementSearchPropertyInfo), '("shape", DOMHTMLAreaElementShapePropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("target", DOMHTMLAreaElementTargetPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLAreaElement = DOMHTMLAreaElementSignalList
+type DOMHTMLAreaElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLAreaElement::get_alt
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_get_alt" webkit_dom_html_area_element_get_alt :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    IO CString
+
+
+dOMHTMLAreaElementGetAlt ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAreaElementGetAlt _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_area_element_get_alt _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_area_element_get_alt" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAreaElement::get_coords
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_get_coords" webkit_dom_html_area_element_get_coords :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    IO CString
+
+
+dOMHTMLAreaElementGetCoords ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAreaElementGetCoords _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_area_element_get_coords _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_area_element_get_coords" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAreaElement::get_hash
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_get_hash" webkit_dom_html_area_element_get_hash :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    IO CString
+
+
+dOMHTMLAreaElementGetHash ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAreaElementGetHash _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_area_element_get_hash _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_area_element_get_hash" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAreaElement::get_host
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_get_host" webkit_dom_html_area_element_get_host :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    IO CString
+
+
+dOMHTMLAreaElementGetHost ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAreaElementGetHost _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_area_element_get_host _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_area_element_get_host" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAreaElement::get_hostname
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_get_hostname" webkit_dom_html_area_element_get_hostname :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    IO CString
+
+
+dOMHTMLAreaElementGetHostname ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAreaElementGetHostname _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_area_element_get_hostname _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_area_element_get_hostname" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAreaElement::get_href
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_get_href" webkit_dom_html_area_element_get_href :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    IO CString
+
+
+dOMHTMLAreaElementGetHref ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAreaElementGetHref _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_area_element_get_href _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_area_element_get_href" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAreaElement::get_no_href
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_get_no_href" webkit_dom_html_area_element_get_no_href :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    IO CInt
+
+
+dOMHTMLAreaElementGetNoHref ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLAreaElementGetNoHref _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_area_element_get_no_href _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAreaElement::get_pathname
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_get_pathname" webkit_dom_html_area_element_get_pathname :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    IO CString
+
+
+dOMHTMLAreaElementGetPathname ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAreaElementGetPathname _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_area_element_get_pathname _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_area_element_get_pathname" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAreaElement::get_port
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_get_port" webkit_dom_html_area_element_get_port :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    IO CString
+
+
+dOMHTMLAreaElementGetPort ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAreaElementGetPort _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_area_element_get_port _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_area_element_get_port" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAreaElement::get_protocol
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_get_protocol" webkit_dom_html_area_element_get_protocol :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    IO CString
+
+
+dOMHTMLAreaElementGetProtocol ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAreaElementGetProtocol _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_area_element_get_protocol _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_area_element_get_protocol" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAreaElement::get_search
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_get_search" webkit_dom_html_area_element_get_search :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    IO CString
+
+
+dOMHTMLAreaElementGetSearch ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAreaElementGetSearch _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_area_element_get_search _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_area_element_get_search" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAreaElement::get_shape
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_get_shape" webkit_dom_html_area_element_get_shape :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    IO CString
+
+
+dOMHTMLAreaElementGetShape ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAreaElementGetShape _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_area_element_get_shape _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_area_element_get_shape" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAreaElement::get_target
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_get_target" webkit_dom_html_area_element_get_target :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    IO CString
+
+
+dOMHTMLAreaElementGetTarget ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLAreaElementGetTarget _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_area_element_get_target _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_area_element_get_target" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLAreaElement::set_alt
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_set_alt" webkit_dom_html_area_element_set_alt :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAreaElementSetAlt ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAreaElementSetAlt _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_area_element_set_alt _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAreaElement::set_coords
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_set_coords" webkit_dom_html_area_element_set_coords :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAreaElementSetCoords ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAreaElementSetCoords _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_area_element_set_coords _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAreaElement::set_href
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_set_href" webkit_dom_html_area_element_set_href :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAreaElementSetHref ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAreaElementSetHref _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_area_element_set_href _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAreaElement::set_no_href
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_set_no_href" webkit_dom_html_area_element_set_no_href :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLAreaElementSetNoHref ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLAreaElementSetNoHref _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_area_element_set_no_href _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLAreaElement::set_shape
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_set_shape" webkit_dom_html_area_element_set_shape :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAreaElementSetShape ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAreaElementSetShape _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_area_element_set_shape _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLAreaElement::set_target
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_area_element_set_target" webkit_dom_html_area_element_set_target :: 
+    Ptr DOMHTMLAreaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLAreaElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLAreaElementSetTarget ::
+    (MonadIO m, DOMHTMLAreaElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLAreaElementSetTarget _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_area_element_set_target _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLAreaElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLAreaElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLAreaElement.hs-boot
@@ -0,0 +1,28 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLAreaElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLAreaElement = DOMHTMLAreaElement (ForeignPtr DOMHTMLAreaElement)
+instance GObject DOMHTMLAreaElement where
+class GObject o => DOMHTMLAreaElementK o
+instance (GObject o, IsDescendantOf DOMHTMLAreaElement o) => DOMHTMLAreaElementK o
+data DOMHTMLAreaElementAltPropertyInfo
+data DOMHTMLAreaElementCoordsPropertyInfo
+data DOMHTMLAreaElementHashPropertyInfo
+data DOMHTMLAreaElementHostPropertyInfo
+data DOMHTMLAreaElementHostnamePropertyInfo
+data DOMHTMLAreaElementHrefPropertyInfo
+data DOMHTMLAreaElementNoHrefPropertyInfo
+data DOMHTMLAreaElementPathnamePropertyInfo
+data DOMHTMLAreaElementPingPropertyInfo
+data DOMHTMLAreaElementPortPropertyInfo
+data DOMHTMLAreaElementProtocolPropertyInfo
+data DOMHTMLAreaElementRelPropertyInfo
+data DOMHTMLAreaElementSearchPropertyInfo
+data DOMHTMLAreaElementShapePropertyInfo
+data DOMHTMLAreaElementTargetPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLBRElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLBRElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLBRElement.hs
@@ -0,0 +1,158 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLBRElement
+    ( 
+
+-- * Exported types
+    DOMHTMLBRElement(..)                    ,
+    DOMHTMLBRElementK                       ,
+    toDOMHTMLBRElement                      ,
+    noDOMHTMLBRElement                      ,
+
+
+ -- * Methods
+-- ** dOMHTMLBRElementGetClear
+    dOMHTMLBRElementGetClear                ,
+
+
+-- ** dOMHTMLBRElementSetClear
+    dOMHTMLBRElementSetClear                ,
+
+
+
+
+ -- * Properties
+-- ** Clear
+    DOMHTMLBRElementClearPropertyInfo       ,
+    constructDOMHTMLBRElementClear          ,
+    getDOMHTMLBRElementClear                ,
+    setDOMHTMLBRElementClear                ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLBRElement = DOMHTMLBRElement (ForeignPtr DOMHTMLBRElement)
+foreign import ccall "webkit_dom_html_br_element_get_type"
+    c_webkit_dom_html_br_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLBRElement = DOMHTMLBRElementParentTypes
+type DOMHTMLBRElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLBRElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_br_element_get_type
+    
+
+class GObject o => DOMHTMLBRElementK o
+instance (GObject o, IsDescendantOf DOMHTMLBRElement o) => DOMHTMLBRElementK o
+
+toDOMHTMLBRElement :: DOMHTMLBRElementK o => o -> IO DOMHTMLBRElement
+toDOMHTMLBRElement = unsafeCastTo DOMHTMLBRElement
+
+noDOMHTMLBRElement :: Maybe DOMHTMLBRElement
+noDOMHTMLBRElement = Nothing
+
+-- VVV Prop "clear"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLBRElementClear :: (MonadIO m, DOMHTMLBRElementK o) => o -> m T.Text
+getDOMHTMLBRElementClear obj = liftIO $ getObjectPropertyString obj "clear"
+
+setDOMHTMLBRElementClear :: (MonadIO m, DOMHTMLBRElementK o) => o -> T.Text -> m ()
+setDOMHTMLBRElementClear obj val = liftIO $ setObjectPropertyString obj "clear" val
+
+constructDOMHTMLBRElementClear :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLBRElementClear val = constructObjectPropertyString "clear" val
+
+data DOMHTMLBRElementClearPropertyInfo
+instance AttrInfo DOMHTMLBRElementClearPropertyInfo where
+    type AttrAllowedOps DOMHTMLBRElementClearPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLBRElementClearPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLBRElementClearPropertyInfo = DOMHTMLBRElementK
+    type AttrGetType DOMHTMLBRElementClearPropertyInfo = T.Text
+    type AttrLabel DOMHTMLBRElementClearPropertyInfo = "DOMHTMLBRElement::clear"
+    attrGet _ = getDOMHTMLBRElementClear
+    attrSet _ = setDOMHTMLBRElementClear
+    attrConstruct _ = constructDOMHTMLBRElementClear
+
+type instance AttributeList DOMHTMLBRElement = DOMHTMLBRElementAttributeList
+type DOMHTMLBRElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("clear", DOMHTMLBRElementClearPropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLBRElement = DOMHTMLBRElementSignalList
+type DOMHTMLBRElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLBRElement::get_clear
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_br_element_get_clear" webkit_dom_html_br_element_get_clear :: 
+    Ptr DOMHTMLBRElement ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBRElement"
+    IO CString
+
+
+dOMHTMLBRElementGetClear ::
+    (MonadIO m, DOMHTMLBRElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLBRElementGetClear _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_br_element_get_clear _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_br_element_get_clear" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLBRElement::set_clear
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_br_element_set_clear" webkit_dom_html_br_element_set_clear :: 
+    Ptr DOMHTMLBRElement ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBRElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLBRElementSetClear ::
+    (MonadIO m, DOMHTMLBRElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLBRElementSetClear _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_br_element_set_clear _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLBRElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLBRElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLBRElement.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLBRElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLBRElement = DOMHTMLBRElement (ForeignPtr DOMHTMLBRElement)
+instance GObject DOMHTMLBRElement where
+class GObject o => DOMHTMLBRElementK o
+instance (GObject o, IsDescendantOf DOMHTMLBRElement o) => DOMHTMLBRElementK o
+data DOMHTMLBRElementClearPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLBaseElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLBaseElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLBaseElement.hs
@@ -0,0 +1,252 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLBaseElement
+    ( 
+
+-- * Exported types
+    DOMHTMLBaseElement(..)                  ,
+    DOMHTMLBaseElementK                     ,
+    toDOMHTMLBaseElement                    ,
+    noDOMHTMLBaseElement                    ,
+
+
+ -- * Methods
+-- ** dOMHTMLBaseElementGetHref
+    dOMHTMLBaseElementGetHref               ,
+
+
+-- ** dOMHTMLBaseElementGetTarget
+    dOMHTMLBaseElementGetTarget             ,
+
+
+-- ** dOMHTMLBaseElementSetHref
+    dOMHTMLBaseElementSetHref               ,
+
+
+-- ** dOMHTMLBaseElementSetTarget
+    dOMHTMLBaseElementSetTarget             ,
+
+
+
+
+ -- * Properties
+-- ** Href
+    DOMHTMLBaseElementHrefPropertyInfo      ,
+    constructDOMHTMLBaseElementHref         ,
+    getDOMHTMLBaseElementHref               ,
+    setDOMHTMLBaseElementHref               ,
+
+
+-- ** Target
+    DOMHTMLBaseElementTargetPropertyInfo    ,
+    constructDOMHTMLBaseElementTarget       ,
+    getDOMHTMLBaseElementTarget             ,
+    setDOMHTMLBaseElementTarget             ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLBaseElement = DOMHTMLBaseElement (ForeignPtr DOMHTMLBaseElement)
+foreign import ccall "webkit_dom_html_base_element_get_type"
+    c_webkit_dom_html_base_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLBaseElement = DOMHTMLBaseElementParentTypes
+type DOMHTMLBaseElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLBaseElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_base_element_get_type
+    
+
+class GObject o => DOMHTMLBaseElementK o
+instance (GObject o, IsDescendantOf DOMHTMLBaseElement o) => DOMHTMLBaseElementK o
+
+toDOMHTMLBaseElement :: DOMHTMLBaseElementK o => o -> IO DOMHTMLBaseElement
+toDOMHTMLBaseElement = unsafeCastTo DOMHTMLBaseElement
+
+noDOMHTMLBaseElement :: Maybe DOMHTMLBaseElement
+noDOMHTMLBaseElement = Nothing
+
+-- VVV Prop "href"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLBaseElementHref :: (MonadIO m, DOMHTMLBaseElementK o) => o -> m T.Text
+getDOMHTMLBaseElementHref obj = liftIO $ getObjectPropertyString obj "href"
+
+setDOMHTMLBaseElementHref :: (MonadIO m, DOMHTMLBaseElementK o) => o -> T.Text -> m ()
+setDOMHTMLBaseElementHref obj val = liftIO $ setObjectPropertyString obj "href" val
+
+constructDOMHTMLBaseElementHref :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLBaseElementHref val = constructObjectPropertyString "href" val
+
+data DOMHTMLBaseElementHrefPropertyInfo
+instance AttrInfo DOMHTMLBaseElementHrefPropertyInfo where
+    type AttrAllowedOps DOMHTMLBaseElementHrefPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLBaseElementHrefPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLBaseElementHrefPropertyInfo = DOMHTMLBaseElementK
+    type AttrGetType DOMHTMLBaseElementHrefPropertyInfo = T.Text
+    type AttrLabel DOMHTMLBaseElementHrefPropertyInfo = "DOMHTMLBaseElement::href"
+    attrGet _ = getDOMHTMLBaseElementHref
+    attrSet _ = setDOMHTMLBaseElementHref
+    attrConstruct _ = constructDOMHTMLBaseElementHref
+
+-- VVV Prop "target"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLBaseElementTarget :: (MonadIO m, DOMHTMLBaseElementK o) => o -> m T.Text
+getDOMHTMLBaseElementTarget obj = liftIO $ getObjectPropertyString obj "target"
+
+setDOMHTMLBaseElementTarget :: (MonadIO m, DOMHTMLBaseElementK o) => o -> T.Text -> m ()
+setDOMHTMLBaseElementTarget obj val = liftIO $ setObjectPropertyString obj "target" val
+
+constructDOMHTMLBaseElementTarget :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLBaseElementTarget val = constructObjectPropertyString "target" val
+
+data DOMHTMLBaseElementTargetPropertyInfo
+instance AttrInfo DOMHTMLBaseElementTargetPropertyInfo where
+    type AttrAllowedOps DOMHTMLBaseElementTargetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLBaseElementTargetPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLBaseElementTargetPropertyInfo = DOMHTMLBaseElementK
+    type AttrGetType DOMHTMLBaseElementTargetPropertyInfo = T.Text
+    type AttrLabel DOMHTMLBaseElementTargetPropertyInfo = "DOMHTMLBaseElement::target"
+    attrGet _ = getDOMHTMLBaseElementTarget
+    attrSet _ = setDOMHTMLBaseElementTarget
+    attrConstruct _ = constructDOMHTMLBaseElementTarget
+
+type instance AttributeList DOMHTMLBaseElement = DOMHTMLBaseElementAttributeList
+type DOMHTMLBaseElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("href", DOMHTMLBaseElementHrefPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("target", DOMHTMLBaseElementTargetPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLBaseElement = DOMHTMLBaseElementSignalList
+type DOMHTMLBaseElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLBaseElement::get_href
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_base_element_get_href" webkit_dom_html_base_element_get_href :: 
+    Ptr DOMHTMLBaseElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBaseElement"
+    IO CString
+
+
+dOMHTMLBaseElementGetHref ::
+    (MonadIO m, DOMHTMLBaseElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLBaseElementGetHref _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_base_element_get_href _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_base_element_get_href" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLBaseElement::get_target
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_base_element_get_target" webkit_dom_html_base_element_get_target :: 
+    Ptr DOMHTMLBaseElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBaseElement"
+    IO CString
+
+
+dOMHTMLBaseElementGetTarget ::
+    (MonadIO m, DOMHTMLBaseElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLBaseElementGetTarget _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_base_element_get_target _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_base_element_get_target" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLBaseElement::set_href
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_base_element_set_href" webkit_dom_html_base_element_set_href :: 
+    Ptr DOMHTMLBaseElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBaseElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLBaseElementSetHref ::
+    (MonadIO m, DOMHTMLBaseElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLBaseElementSetHref _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_base_element_set_href _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLBaseElement::set_target
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_base_element_set_target" webkit_dom_html_base_element_set_target :: 
+    Ptr DOMHTMLBaseElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBaseElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLBaseElementSetTarget ::
+    (MonadIO m, DOMHTMLBaseElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLBaseElementSetTarget _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_base_element_set_target _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLBaseElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLBaseElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLBaseElement.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLBaseElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLBaseElement = DOMHTMLBaseElement (ForeignPtr DOMHTMLBaseElement)
+instance GObject DOMHTMLBaseElement where
+class GObject o => DOMHTMLBaseElementK o
+instance (GObject o, IsDescendantOf DOMHTMLBaseElement o) => DOMHTMLBaseElementK o
+data DOMHTMLBaseElementHrefPropertyInfo
+data DOMHTMLBaseElementTargetPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLBaseFontElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLBaseFontElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLBaseFontElement.hs
@@ -0,0 +1,341 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLBaseFontElement
+    ( 
+
+-- * Exported types
+    DOMHTMLBaseFontElement(..)              ,
+    DOMHTMLBaseFontElementK                 ,
+    toDOMHTMLBaseFontElement                ,
+    noDOMHTMLBaseFontElement                ,
+
+
+ -- * Methods
+-- ** dOMHTMLBaseFontElementGetColor
+    dOMHTMLBaseFontElementGetColor          ,
+
+
+-- ** dOMHTMLBaseFontElementGetFace
+    dOMHTMLBaseFontElementGetFace           ,
+
+
+-- ** dOMHTMLBaseFontElementGetSize
+    dOMHTMLBaseFontElementGetSize           ,
+
+
+-- ** dOMHTMLBaseFontElementSetColor
+    dOMHTMLBaseFontElementSetColor          ,
+
+
+-- ** dOMHTMLBaseFontElementSetFace
+    dOMHTMLBaseFontElementSetFace           ,
+
+
+-- ** dOMHTMLBaseFontElementSetSize
+    dOMHTMLBaseFontElementSetSize           ,
+
+
+
+
+ -- * Properties
+-- ** Color
+    DOMHTMLBaseFontElementColorPropertyInfo ,
+    constructDOMHTMLBaseFontElementColor    ,
+    getDOMHTMLBaseFontElementColor          ,
+    setDOMHTMLBaseFontElementColor          ,
+
+
+-- ** Face
+    DOMHTMLBaseFontElementFacePropertyInfo  ,
+    constructDOMHTMLBaseFontElementFace     ,
+    getDOMHTMLBaseFontElementFace           ,
+    setDOMHTMLBaseFontElementFace           ,
+
+
+-- ** Size
+    DOMHTMLBaseFontElementSizePropertyInfo  ,
+    constructDOMHTMLBaseFontElementSize     ,
+    getDOMHTMLBaseFontElementSize           ,
+    setDOMHTMLBaseFontElementSize           ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLBaseFontElement = DOMHTMLBaseFontElement (ForeignPtr DOMHTMLBaseFontElement)
+foreign import ccall "webkit_dom_html_base_font_element_get_type"
+    c_webkit_dom_html_base_font_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLBaseFontElement = DOMHTMLBaseFontElementParentTypes
+type DOMHTMLBaseFontElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLBaseFontElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_base_font_element_get_type
+    
+
+class GObject o => DOMHTMLBaseFontElementK o
+instance (GObject o, IsDescendantOf DOMHTMLBaseFontElement o) => DOMHTMLBaseFontElementK o
+
+toDOMHTMLBaseFontElement :: DOMHTMLBaseFontElementK o => o -> IO DOMHTMLBaseFontElement
+toDOMHTMLBaseFontElement = unsafeCastTo DOMHTMLBaseFontElement
+
+noDOMHTMLBaseFontElement :: Maybe DOMHTMLBaseFontElement
+noDOMHTMLBaseFontElement = Nothing
+
+-- VVV Prop "color"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLBaseFontElementColor :: (MonadIO m, DOMHTMLBaseFontElementK o) => o -> m T.Text
+getDOMHTMLBaseFontElementColor obj = liftIO $ getObjectPropertyString obj "color"
+
+setDOMHTMLBaseFontElementColor :: (MonadIO m, DOMHTMLBaseFontElementK o) => o -> T.Text -> m ()
+setDOMHTMLBaseFontElementColor obj val = liftIO $ setObjectPropertyString obj "color" val
+
+constructDOMHTMLBaseFontElementColor :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLBaseFontElementColor val = constructObjectPropertyString "color" val
+
+data DOMHTMLBaseFontElementColorPropertyInfo
+instance AttrInfo DOMHTMLBaseFontElementColorPropertyInfo where
+    type AttrAllowedOps DOMHTMLBaseFontElementColorPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLBaseFontElementColorPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLBaseFontElementColorPropertyInfo = DOMHTMLBaseFontElementK
+    type AttrGetType DOMHTMLBaseFontElementColorPropertyInfo = T.Text
+    type AttrLabel DOMHTMLBaseFontElementColorPropertyInfo = "DOMHTMLBaseFontElement::color"
+    attrGet _ = getDOMHTMLBaseFontElementColor
+    attrSet _ = setDOMHTMLBaseFontElementColor
+    attrConstruct _ = constructDOMHTMLBaseFontElementColor
+
+-- VVV Prop "face"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLBaseFontElementFace :: (MonadIO m, DOMHTMLBaseFontElementK o) => o -> m T.Text
+getDOMHTMLBaseFontElementFace obj = liftIO $ getObjectPropertyString obj "face"
+
+setDOMHTMLBaseFontElementFace :: (MonadIO m, DOMHTMLBaseFontElementK o) => o -> T.Text -> m ()
+setDOMHTMLBaseFontElementFace obj val = liftIO $ setObjectPropertyString obj "face" val
+
+constructDOMHTMLBaseFontElementFace :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLBaseFontElementFace val = constructObjectPropertyString "face" val
+
+data DOMHTMLBaseFontElementFacePropertyInfo
+instance AttrInfo DOMHTMLBaseFontElementFacePropertyInfo where
+    type AttrAllowedOps DOMHTMLBaseFontElementFacePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLBaseFontElementFacePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLBaseFontElementFacePropertyInfo = DOMHTMLBaseFontElementK
+    type AttrGetType DOMHTMLBaseFontElementFacePropertyInfo = T.Text
+    type AttrLabel DOMHTMLBaseFontElementFacePropertyInfo = "DOMHTMLBaseFontElement::face"
+    attrGet _ = getDOMHTMLBaseFontElementFace
+    attrSet _ = setDOMHTMLBaseFontElementFace
+    attrConstruct _ = constructDOMHTMLBaseFontElementFace
+
+-- VVV Prop "size"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLBaseFontElementSize :: (MonadIO m, DOMHTMLBaseFontElementK o) => o -> m Int64
+getDOMHTMLBaseFontElementSize obj = liftIO $ getObjectPropertyInt64 obj "size"
+
+setDOMHTMLBaseFontElementSize :: (MonadIO m, DOMHTMLBaseFontElementK o) => o -> Int64 -> m ()
+setDOMHTMLBaseFontElementSize obj val = liftIO $ setObjectPropertyInt64 obj "size" val
+
+constructDOMHTMLBaseFontElementSize :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLBaseFontElementSize val = constructObjectPropertyInt64 "size" val
+
+data DOMHTMLBaseFontElementSizePropertyInfo
+instance AttrInfo DOMHTMLBaseFontElementSizePropertyInfo where
+    type AttrAllowedOps DOMHTMLBaseFontElementSizePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLBaseFontElementSizePropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLBaseFontElementSizePropertyInfo = DOMHTMLBaseFontElementK
+    type AttrGetType DOMHTMLBaseFontElementSizePropertyInfo = Int64
+    type AttrLabel DOMHTMLBaseFontElementSizePropertyInfo = "DOMHTMLBaseFontElement::size"
+    attrGet _ = getDOMHTMLBaseFontElementSize
+    attrSet _ = setDOMHTMLBaseFontElementSize
+    attrConstruct _ = constructDOMHTMLBaseFontElementSize
+
+type instance AttributeList DOMHTMLBaseFontElement = DOMHTMLBaseFontElementAttributeList
+type DOMHTMLBaseFontElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("color", DOMHTMLBaseFontElementColorPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("face", DOMHTMLBaseFontElementFacePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("size", DOMHTMLBaseFontElementSizePropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLBaseFontElement = DOMHTMLBaseFontElementSignalList
+type DOMHTMLBaseFontElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLBaseFontElement::get_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_base_font_element_get_color" webkit_dom_html_base_font_element_get_color :: 
+    Ptr DOMHTMLBaseFontElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement"
+    IO CString
+
+
+dOMHTMLBaseFontElementGetColor ::
+    (MonadIO m, DOMHTMLBaseFontElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLBaseFontElementGetColor _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_base_font_element_get_color _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_base_font_element_get_color" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLBaseFontElement::get_face
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_base_font_element_get_face" webkit_dom_html_base_font_element_get_face :: 
+    Ptr DOMHTMLBaseFontElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement"
+    IO CString
+
+
+dOMHTMLBaseFontElementGetFace ::
+    (MonadIO m, DOMHTMLBaseFontElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLBaseFontElementGetFace _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_base_font_element_get_face _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_base_font_element_get_face" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLBaseFontElement::get_size
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_base_font_element_get_size" webkit_dom_html_base_font_element_get_size :: 
+    Ptr DOMHTMLBaseFontElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement"
+    IO Int64
+
+
+dOMHTMLBaseFontElementGetSize ::
+    (MonadIO m, DOMHTMLBaseFontElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLBaseFontElementGetSize _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_base_font_element_get_size _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLBaseFontElement::set_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_base_font_element_set_color" webkit_dom_html_base_font_element_set_color :: 
+    Ptr DOMHTMLBaseFontElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLBaseFontElementSetColor ::
+    (MonadIO m, DOMHTMLBaseFontElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLBaseFontElementSetColor _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_base_font_element_set_color _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLBaseFontElement::set_face
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_base_font_element_set_face" webkit_dom_html_base_font_element_set_face :: 
+    Ptr DOMHTMLBaseFontElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLBaseFontElementSetFace ::
+    (MonadIO m, DOMHTMLBaseFontElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLBaseFontElementSetFace _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_base_font_element_set_face _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLBaseFontElement::set_size
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_base_font_element_set_size" webkit_dom_html_base_font_element_set_size :: 
+    Ptr DOMHTMLBaseFontElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBaseFontElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLBaseFontElementSetSize ::
+    (MonadIO m, DOMHTMLBaseFontElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLBaseFontElementSetSize _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_base_font_element_set_size _obj' value
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLBaseFontElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLBaseFontElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLBaseFontElement.hs-boot
@@ -0,0 +1,16 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLBaseFontElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLBaseFontElement = DOMHTMLBaseFontElement (ForeignPtr DOMHTMLBaseFontElement)
+instance GObject DOMHTMLBaseFontElement where
+class GObject o => DOMHTMLBaseFontElementK o
+instance (GObject o, IsDescendantOf DOMHTMLBaseFontElement o) => DOMHTMLBaseFontElementK o
+data DOMHTMLBaseFontElementColorPropertyInfo
+data DOMHTMLBaseFontElementFacePropertyInfo
+data DOMHTMLBaseFontElementSizePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLBodyElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLBodyElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLBodyElement.hs
@@ -0,0 +1,628 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLBodyElement
+    ( 
+
+-- * Exported types
+    DOMHTMLBodyElement(..)                  ,
+    DOMHTMLBodyElementK                     ,
+    toDOMHTMLBodyElement                    ,
+    noDOMHTMLBodyElement                    ,
+
+
+ -- * Methods
+-- ** dOMHTMLBodyElementGetALink
+    dOMHTMLBodyElementGetALink              ,
+
+
+-- ** dOMHTMLBodyElementGetBackground
+    dOMHTMLBodyElementGetBackground         ,
+
+
+-- ** dOMHTMLBodyElementGetBgColor
+    dOMHTMLBodyElementGetBgColor            ,
+
+
+-- ** dOMHTMLBodyElementGetLink
+    dOMHTMLBodyElementGetLink               ,
+
+
+-- ** dOMHTMLBodyElementGetText
+    dOMHTMLBodyElementGetText               ,
+
+
+-- ** dOMHTMLBodyElementGetVLink
+    dOMHTMLBodyElementGetVLink              ,
+
+
+-- ** dOMHTMLBodyElementSetALink
+    dOMHTMLBodyElementSetALink              ,
+
+
+-- ** dOMHTMLBodyElementSetBackground
+    dOMHTMLBodyElementSetBackground         ,
+
+
+-- ** dOMHTMLBodyElementSetBgColor
+    dOMHTMLBodyElementSetBgColor            ,
+
+
+-- ** dOMHTMLBodyElementSetLink
+    dOMHTMLBodyElementSetLink               ,
+
+
+-- ** dOMHTMLBodyElementSetText
+    dOMHTMLBodyElementSetText               ,
+
+
+-- ** dOMHTMLBodyElementSetVLink
+    dOMHTMLBodyElementSetVLink              ,
+
+
+
+
+ -- * Properties
+-- ** ALink
+    DOMHTMLBodyElementALinkPropertyInfo     ,
+    constructDOMHTMLBodyElementALink        ,
+    getDOMHTMLBodyElementALink              ,
+    setDOMHTMLBodyElementALink              ,
+
+
+-- ** Background
+    DOMHTMLBodyElementBackgroundPropertyInfo,
+    constructDOMHTMLBodyElementBackground   ,
+    getDOMHTMLBodyElementBackground         ,
+    setDOMHTMLBodyElementBackground         ,
+
+
+-- ** BgColor
+    DOMHTMLBodyElementBgColorPropertyInfo   ,
+    constructDOMHTMLBodyElementBgColor      ,
+    getDOMHTMLBodyElementBgColor            ,
+    setDOMHTMLBodyElementBgColor            ,
+
+
+-- ** Link
+    DOMHTMLBodyElementLinkPropertyInfo      ,
+    constructDOMHTMLBodyElementLink         ,
+    getDOMHTMLBodyElementLink               ,
+    setDOMHTMLBodyElementLink               ,
+
+
+-- ** Text
+    DOMHTMLBodyElementTextPropertyInfo      ,
+    constructDOMHTMLBodyElementText         ,
+    getDOMHTMLBodyElementText               ,
+    setDOMHTMLBodyElementText               ,
+
+
+-- ** VLink
+    DOMHTMLBodyElementVLinkPropertyInfo     ,
+    constructDOMHTMLBodyElementVLink        ,
+    getDOMHTMLBodyElementVLink              ,
+    setDOMHTMLBodyElementVLink              ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLBodyElement = DOMHTMLBodyElement (ForeignPtr DOMHTMLBodyElement)
+foreign import ccall "webkit_dom_html_body_element_get_type"
+    c_webkit_dom_html_body_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLBodyElement = DOMHTMLBodyElementParentTypes
+type DOMHTMLBodyElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLBodyElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_body_element_get_type
+    
+
+class GObject o => DOMHTMLBodyElementK o
+instance (GObject o, IsDescendantOf DOMHTMLBodyElement o) => DOMHTMLBodyElementK o
+
+toDOMHTMLBodyElement :: DOMHTMLBodyElementK o => o -> IO DOMHTMLBodyElement
+toDOMHTMLBodyElement = unsafeCastTo DOMHTMLBodyElement
+
+noDOMHTMLBodyElement :: Maybe DOMHTMLBodyElement
+noDOMHTMLBodyElement = Nothing
+
+-- VVV Prop "a-link"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLBodyElementALink :: (MonadIO m, DOMHTMLBodyElementK o) => o -> m T.Text
+getDOMHTMLBodyElementALink obj = liftIO $ getObjectPropertyString obj "a-link"
+
+setDOMHTMLBodyElementALink :: (MonadIO m, DOMHTMLBodyElementK o) => o -> T.Text -> m ()
+setDOMHTMLBodyElementALink obj val = liftIO $ setObjectPropertyString obj "a-link" val
+
+constructDOMHTMLBodyElementALink :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLBodyElementALink val = constructObjectPropertyString "a-link" val
+
+data DOMHTMLBodyElementALinkPropertyInfo
+instance AttrInfo DOMHTMLBodyElementALinkPropertyInfo where
+    type AttrAllowedOps DOMHTMLBodyElementALinkPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLBodyElementALinkPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLBodyElementALinkPropertyInfo = DOMHTMLBodyElementK
+    type AttrGetType DOMHTMLBodyElementALinkPropertyInfo = T.Text
+    type AttrLabel DOMHTMLBodyElementALinkPropertyInfo = "DOMHTMLBodyElement::a-link"
+    attrGet _ = getDOMHTMLBodyElementALink
+    attrSet _ = setDOMHTMLBodyElementALink
+    attrConstruct _ = constructDOMHTMLBodyElementALink
+
+-- VVV Prop "background"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLBodyElementBackground :: (MonadIO m, DOMHTMLBodyElementK o) => o -> m T.Text
+getDOMHTMLBodyElementBackground obj = liftIO $ getObjectPropertyString obj "background"
+
+setDOMHTMLBodyElementBackground :: (MonadIO m, DOMHTMLBodyElementK o) => o -> T.Text -> m ()
+setDOMHTMLBodyElementBackground obj val = liftIO $ setObjectPropertyString obj "background" val
+
+constructDOMHTMLBodyElementBackground :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLBodyElementBackground val = constructObjectPropertyString "background" val
+
+data DOMHTMLBodyElementBackgroundPropertyInfo
+instance AttrInfo DOMHTMLBodyElementBackgroundPropertyInfo where
+    type AttrAllowedOps DOMHTMLBodyElementBackgroundPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLBodyElementBackgroundPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLBodyElementBackgroundPropertyInfo = DOMHTMLBodyElementK
+    type AttrGetType DOMHTMLBodyElementBackgroundPropertyInfo = T.Text
+    type AttrLabel DOMHTMLBodyElementBackgroundPropertyInfo = "DOMHTMLBodyElement::background"
+    attrGet _ = getDOMHTMLBodyElementBackground
+    attrSet _ = setDOMHTMLBodyElementBackground
+    attrConstruct _ = constructDOMHTMLBodyElementBackground
+
+-- VVV Prop "bg-color"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLBodyElementBgColor :: (MonadIO m, DOMHTMLBodyElementK o) => o -> m T.Text
+getDOMHTMLBodyElementBgColor obj = liftIO $ getObjectPropertyString obj "bg-color"
+
+setDOMHTMLBodyElementBgColor :: (MonadIO m, DOMHTMLBodyElementK o) => o -> T.Text -> m ()
+setDOMHTMLBodyElementBgColor obj val = liftIO $ setObjectPropertyString obj "bg-color" val
+
+constructDOMHTMLBodyElementBgColor :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLBodyElementBgColor val = constructObjectPropertyString "bg-color" val
+
+data DOMHTMLBodyElementBgColorPropertyInfo
+instance AttrInfo DOMHTMLBodyElementBgColorPropertyInfo where
+    type AttrAllowedOps DOMHTMLBodyElementBgColorPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLBodyElementBgColorPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLBodyElementBgColorPropertyInfo = DOMHTMLBodyElementK
+    type AttrGetType DOMHTMLBodyElementBgColorPropertyInfo = T.Text
+    type AttrLabel DOMHTMLBodyElementBgColorPropertyInfo = "DOMHTMLBodyElement::bg-color"
+    attrGet _ = getDOMHTMLBodyElementBgColor
+    attrSet _ = setDOMHTMLBodyElementBgColor
+    attrConstruct _ = constructDOMHTMLBodyElementBgColor
+
+-- VVV Prop "link"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLBodyElementLink :: (MonadIO m, DOMHTMLBodyElementK o) => o -> m T.Text
+getDOMHTMLBodyElementLink obj = liftIO $ getObjectPropertyString obj "link"
+
+setDOMHTMLBodyElementLink :: (MonadIO m, DOMHTMLBodyElementK o) => o -> T.Text -> m ()
+setDOMHTMLBodyElementLink obj val = liftIO $ setObjectPropertyString obj "link" val
+
+constructDOMHTMLBodyElementLink :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLBodyElementLink val = constructObjectPropertyString "link" val
+
+data DOMHTMLBodyElementLinkPropertyInfo
+instance AttrInfo DOMHTMLBodyElementLinkPropertyInfo where
+    type AttrAllowedOps DOMHTMLBodyElementLinkPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLBodyElementLinkPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLBodyElementLinkPropertyInfo = DOMHTMLBodyElementK
+    type AttrGetType DOMHTMLBodyElementLinkPropertyInfo = T.Text
+    type AttrLabel DOMHTMLBodyElementLinkPropertyInfo = "DOMHTMLBodyElement::link"
+    attrGet _ = getDOMHTMLBodyElementLink
+    attrSet _ = setDOMHTMLBodyElementLink
+    attrConstruct _ = constructDOMHTMLBodyElementLink
+
+-- VVV Prop "text"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLBodyElementText :: (MonadIO m, DOMHTMLBodyElementK o) => o -> m T.Text
+getDOMHTMLBodyElementText obj = liftIO $ getObjectPropertyString obj "text"
+
+setDOMHTMLBodyElementText :: (MonadIO m, DOMHTMLBodyElementK o) => o -> T.Text -> m ()
+setDOMHTMLBodyElementText obj val = liftIO $ setObjectPropertyString obj "text" val
+
+constructDOMHTMLBodyElementText :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLBodyElementText val = constructObjectPropertyString "text" val
+
+data DOMHTMLBodyElementTextPropertyInfo
+instance AttrInfo DOMHTMLBodyElementTextPropertyInfo where
+    type AttrAllowedOps DOMHTMLBodyElementTextPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLBodyElementTextPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLBodyElementTextPropertyInfo = DOMHTMLBodyElementK
+    type AttrGetType DOMHTMLBodyElementTextPropertyInfo = T.Text
+    type AttrLabel DOMHTMLBodyElementTextPropertyInfo = "DOMHTMLBodyElement::text"
+    attrGet _ = getDOMHTMLBodyElementText
+    attrSet _ = setDOMHTMLBodyElementText
+    attrConstruct _ = constructDOMHTMLBodyElementText
+
+-- VVV Prop "v-link"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLBodyElementVLink :: (MonadIO m, DOMHTMLBodyElementK o) => o -> m T.Text
+getDOMHTMLBodyElementVLink obj = liftIO $ getObjectPropertyString obj "v-link"
+
+setDOMHTMLBodyElementVLink :: (MonadIO m, DOMHTMLBodyElementK o) => o -> T.Text -> m ()
+setDOMHTMLBodyElementVLink obj val = liftIO $ setObjectPropertyString obj "v-link" val
+
+constructDOMHTMLBodyElementVLink :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLBodyElementVLink val = constructObjectPropertyString "v-link" val
+
+data DOMHTMLBodyElementVLinkPropertyInfo
+instance AttrInfo DOMHTMLBodyElementVLinkPropertyInfo where
+    type AttrAllowedOps DOMHTMLBodyElementVLinkPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLBodyElementVLinkPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLBodyElementVLinkPropertyInfo = DOMHTMLBodyElementK
+    type AttrGetType DOMHTMLBodyElementVLinkPropertyInfo = T.Text
+    type AttrLabel DOMHTMLBodyElementVLinkPropertyInfo = "DOMHTMLBodyElement::v-link"
+    attrGet _ = getDOMHTMLBodyElementVLink
+    attrSet _ = setDOMHTMLBodyElementVLink
+    attrConstruct _ = constructDOMHTMLBodyElementVLink
+
+type instance AttributeList DOMHTMLBodyElement = DOMHTMLBodyElementAttributeList
+type DOMHTMLBodyElementAttributeList = ('[ '("a-link", DOMHTMLBodyElementALinkPropertyInfo), '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("background", DOMHTMLBodyElementBackgroundPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("bg-color", DOMHTMLBodyElementBgColorPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("link", DOMHTMLBodyElementLinkPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text", DOMHTMLBodyElementTextPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("v-link", DOMHTMLBodyElementVLinkPropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLBodyElement = DOMHTMLBodyElementSignalList
+type DOMHTMLBodyElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLBodyElement::get_a_link
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_body_element_get_a_link" webkit_dom_html_body_element_get_a_link :: 
+    Ptr DOMHTMLBodyElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBodyElement"
+    IO CString
+
+
+dOMHTMLBodyElementGetALink ::
+    (MonadIO m, DOMHTMLBodyElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLBodyElementGetALink _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_body_element_get_a_link _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_body_element_get_a_link" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLBodyElement::get_background
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_body_element_get_background" webkit_dom_html_body_element_get_background :: 
+    Ptr DOMHTMLBodyElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBodyElement"
+    IO CString
+
+
+dOMHTMLBodyElementGetBackground ::
+    (MonadIO m, DOMHTMLBodyElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLBodyElementGetBackground _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_body_element_get_background _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_body_element_get_background" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLBodyElement::get_bg_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_body_element_get_bg_color" webkit_dom_html_body_element_get_bg_color :: 
+    Ptr DOMHTMLBodyElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBodyElement"
+    IO CString
+
+
+dOMHTMLBodyElementGetBgColor ::
+    (MonadIO m, DOMHTMLBodyElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLBodyElementGetBgColor _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_body_element_get_bg_color _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_body_element_get_bg_color" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLBodyElement::get_link
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_body_element_get_link" webkit_dom_html_body_element_get_link :: 
+    Ptr DOMHTMLBodyElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBodyElement"
+    IO CString
+
+
+dOMHTMLBodyElementGetLink ::
+    (MonadIO m, DOMHTMLBodyElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLBodyElementGetLink _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_body_element_get_link _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_body_element_get_link" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLBodyElement::get_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_body_element_get_text" webkit_dom_html_body_element_get_text :: 
+    Ptr DOMHTMLBodyElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBodyElement"
+    IO CString
+
+
+dOMHTMLBodyElementGetText ::
+    (MonadIO m, DOMHTMLBodyElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLBodyElementGetText _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_body_element_get_text _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_body_element_get_text" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLBodyElement::get_v_link
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_body_element_get_v_link" webkit_dom_html_body_element_get_v_link :: 
+    Ptr DOMHTMLBodyElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBodyElement"
+    IO CString
+
+
+dOMHTMLBodyElementGetVLink ::
+    (MonadIO m, DOMHTMLBodyElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLBodyElementGetVLink _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_body_element_get_v_link _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_body_element_get_v_link" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLBodyElement::set_a_link
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_body_element_set_a_link" webkit_dom_html_body_element_set_a_link :: 
+    Ptr DOMHTMLBodyElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBodyElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLBodyElementSetALink ::
+    (MonadIO m, DOMHTMLBodyElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLBodyElementSetALink _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_body_element_set_a_link _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLBodyElement::set_background
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_body_element_set_background" webkit_dom_html_body_element_set_background :: 
+    Ptr DOMHTMLBodyElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBodyElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLBodyElementSetBackground ::
+    (MonadIO m, DOMHTMLBodyElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLBodyElementSetBackground _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_body_element_set_background _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLBodyElement::set_bg_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_body_element_set_bg_color" webkit_dom_html_body_element_set_bg_color :: 
+    Ptr DOMHTMLBodyElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBodyElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLBodyElementSetBgColor ::
+    (MonadIO m, DOMHTMLBodyElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLBodyElementSetBgColor _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_body_element_set_bg_color _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLBodyElement::set_link
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_body_element_set_link" webkit_dom_html_body_element_set_link :: 
+    Ptr DOMHTMLBodyElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBodyElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLBodyElementSetLink ::
+    (MonadIO m, DOMHTMLBodyElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLBodyElementSetLink _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_body_element_set_link _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLBodyElement::set_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_body_element_set_text" webkit_dom_html_body_element_set_text :: 
+    Ptr DOMHTMLBodyElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBodyElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLBodyElementSetText ::
+    (MonadIO m, DOMHTMLBodyElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLBodyElementSetText _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_body_element_set_text _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLBodyElement::set_v_link
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLBodyElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_body_element_set_v_link" webkit_dom_html_body_element_set_v_link :: 
+    Ptr DOMHTMLBodyElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLBodyElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLBodyElementSetVLink ::
+    (MonadIO m, DOMHTMLBodyElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLBodyElementSetVLink _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_body_element_set_v_link _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLBodyElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLBodyElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLBodyElement.hs-boot
@@ -0,0 +1,19 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLBodyElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLBodyElement = DOMHTMLBodyElement (ForeignPtr DOMHTMLBodyElement)
+instance GObject DOMHTMLBodyElement where
+class GObject o => DOMHTMLBodyElementK o
+instance (GObject o, IsDescendantOf DOMHTMLBodyElement o) => DOMHTMLBodyElementK o
+data DOMHTMLBodyElementALinkPropertyInfo
+data DOMHTMLBodyElementBackgroundPropertyInfo
+data DOMHTMLBodyElementBgColorPropertyInfo
+data DOMHTMLBodyElementLinkPropertyInfo
+data DOMHTMLBodyElementTextPropertyInfo
+data DOMHTMLBodyElementVLinkPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLButtonElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLButtonElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLButtonElement.hs
@@ -0,0 +1,834 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement
+    ( 
+
+-- * Exported types
+    DOMHTMLButtonElement(..)                ,
+    DOMHTMLButtonElementK                   ,
+    toDOMHTMLButtonElement                  ,
+    noDOMHTMLButtonElement                  ,
+
+
+ -- * Methods
+-- ** dOMHTMLButtonElementGetAutofocus
+    dOMHTMLButtonElementGetAutofocus        ,
+
+
+-- ** dOMHTMLButtonElementGetButtonType
+    dOMHTMLButtonElementGetButtonType       ,
+
+
+-- ** dOMHTMLButtonElementGetDisabled
+    dOMHTMLButtonElementGetDisabled         ,
+
+
+-- ** dOMHTMLButtonElementGetForm
+    dOMHTMLButtonElementGetForm             ,
+
+
+-- ** dOMHTMLButtonElementGetName
+    dOMHTMLButtonElementGetName             ,
+
+
+-- ** dOMHTMLButtonElementGetValue
+    dOMHTMLButtonElementGetValue            ,
+
+
+-- ** dOMHTMLButtonElementGetWillValidate
+    dOMHTMLButtonElementGetWillValidate     ,
+
+
+-- ** dOMHTMLButtonElementSetAutofocus
+    dOMHTMLButtonElementSetAutofocus        ,
+
+
+-- ** dOMHTMLButtonElementSetButtonType
+    dOMHTMLButtonElementSetButtonType       ,
+
+
+-- ** dOMHTMLButtonElementSetDisabled
+    dOMHTMLButtonElementSetDisabled         ,
+
+
+-- ** dOMHTMLButtonElementSetName
+    dOMHTMLButtonElementSetName             ,
+
+
+-- ** dOMHTMLButtonElementSetValue
+    dOMHTMLButtonElementSetValue            ,
+
+
+
+
+ -- * Properties
+-- ** Autofocus
+    DOMHTMLButtonElementAutofocusPropertyInfo,
+    constructDOMHTMLButtonElementAutofocus  ,
+    getDOMHTMLButtonElementAutofocus        ,
+    setDOMHTMLButtonElementAutofocus        ,
+
+
+-- ** Disabled
+    DOMHTMLButtonElementDisabledPropertyInfo,
+    constructDOMHTMLButtonElementDisabled   ,
+    getDOMHTMLButtonElementDisabled         ,
+    setDOMHTMLButtonElementDisabled         ,
+
+
+-- ** Form
+    DOMHTMLButtonElementFormPropertyInfo    ,
+    getDOMHTMLButtonElementForm             ,
+
+
+-- ** FormAction
+    DOMHTMLButtonElementFormActionPropertyInfo,
+    constructDOMHTMLButtonElementFormAction ,
+    getDOMHTMLButtonElementFormAction       ,
+    setDOMHTMLButtonElementFormAction       ,
+
+
+-- ** FormEnctype
+    DOMHTMLButtonElementFormEnctypePropertyInfo,
+    constructDOMHTMLButtonElementFormEnctype,
+    getDOMHTMLButtonElementFormEnctype      ,
+    setDOMHTMLButtonElementFormEnctype      ,
+
+
+-- ** FormMethod
+    DOMHTMLButtonElementFormMethodPropertyInfo,
+    constructDOMHTMLButtonElementFormMethod ,
+    getDOMHTMLButtonElementFormMethod       ,
+    setDOMHTMLButtonElementFormMethod       ,
+
+
+-- ** FormNoValidate
+    DOMHTMLButtonElementFormNoValidatePropertyInfo,
+    constructDOMHTMLButtonElementFormNoValidate,
+    getDOMHTMLButtonElementFormNoValidate   ,
+    setDOMHTMLButtonElementFormNoValidate   ,
+
+
+-- ** FormTarget
+    DOMHTMLButtonElementFormTargetPropertyInfo,
+    constructDOMHTMLButtonElementFormTarget ,
+    getDOMHTMLButtonElementFormTarget       ,
+    setDOMHTMLButtonElementFormTarget       ,
+
+
+-- ** Labels
+    DOMHTMLButtonElementLabelsPropertyInfo  ,
+    getDOMHTMLButtonElementLabels           ,
+
+
+-- ** Name
+    DOMHTMLButtonElementNamePropertyInfo    ,
+    constructDOMHTMLButtonElementName       ,
+    getDOMHTMLButtonElementName             ,
+    setDOMHTMLButtonElementName             ,
+
+
+-- ** Type
+    DOMHTMLButtonElementTypePropertyInfo    ,
+    constructDOMHTMLButtonElementType       ,
+    getDOMHTMLButtonElementType             ,
+    setDOMHTMLButtonElementType             ,
+
+
+-- ** ValidationMessage
+    DOMHTMLButtonElementValidationMessagePropertyInfo,
+    getDOMHTMLButtonElementValidationMessage,
+
+
+-- ** Value
+    DOMHTMLButtonElementValuePropertyInfo   ,
+    constructDOMHTMLButtonElementValue      ,
+    getDOMHTMLButtonElementValue            ,
+    setDOMHTMLButtonElementValue            ,
+
+
+-- ** WillValidate
+    DOMHTMLButtonElementWillValidatePropertyInfo,
+    getDOMHTMLButtonElementWillValidate     ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLButtonElement = DOMHTMLButtonElement (ForeignPtr DOMHTMLButtonElement)
+foreign import ccall "webkit_dom_html_button_element_get_type"
+    c_webkit_dom_html_button_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLButtonElement = DOMHTMLButtonElementParentTypes
+type DOMHTMLButtonElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLButtonElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_button_element_get_type
+    
+
+class GObject o => DOMHTMLButtonElementK o
+instance (GObject o, IsDescendantOf DOMHTMLButtonElement o) => DOMHTMLButtonElementK o
+
+toDOMHTMLButtonElement :: DOMHTMLButtonElementK o => o -> IO DOMHTMLButtonElement
+toDOMHTMLButtonElement = unsafeCastTo DOMHTMLButtonElement
+
+noDOMHTMLButtonElement :: Maybe DOMHTMLButtonElement
+noDOMHTMLButtonElement = Nothing
+
+-- VVV Prop "autofocus"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLButtonElementAutofocus :: (MonadIO m, DOMHTMLButtonElementK o) => o -> m Bool
+getDOMHTMLButtonElementAutofocus obj = liftIO $ getObjectPropertyBool obj "autofocus"
+
+setDOMHTMLButtonElementAutofocus :: (MonadIO m, DOMHTMLButtonElementK o) => o -> Bool -> m ()
+setDOMHTMLButtonElementAutofocus obj val = liftIO $ setObjectPropertyBool obj "autofocus" val
+
+constructDOMHTMLButtonElementAutofocus :: Bool -> IO ([Char], GValue)
+constructDOMHTMLButtonElementAutofocus val = constructObjectPropertyBool "autofocus" val
+
+data DOMHTMLButtonElementAutofocusPropertyInfo
+instance AttrInfo DOMHTMLButtonElementAutofocusPropertyInfo where
+    type AttrAllowedOps DOMHTMLButtonElementAutofocusPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLButtonElementAutofocusPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLButtonElementAutofocusPropertyInfo = DOMHTMLButtonElementK
+    type AttrGetType DOMHTMLButtonElementAutofocusPropertyInfo = Bool
+    type AttrLabel DOMHTMLButtonElementAutofocusPropertyInfo = "DOMHTMLButtonElement::autofocus"
+    attrGet _ = getDOMHTMLButtonElementAutofocus
+    attrSet _ = setDOMHTMLButtonElementAutofocus
+    attrConstruct _ = constructDOMHTMLButtonElementAutofocus
+
+-- VVV Prop "disabled"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLButtonElementDisabled :: (MonadIO m, DOMHTMLButtonElementK o) => o -> m Bool
+getDOMHTMLButtonElementDisabled obj = liftIO $ getObjectPropertyBool obj "disabled"
+
+setDOMHTMLButtonElementDisabled :: (MonadIO m, DOMHTMLButtonElementK o) => o -> Bool -> m ()
+setDOMHTMLButtonElementDisabled obj val = liftIO $ setObjectPropertyBool obj "disabled" val
+
+constructDOMHTMLButtonElementDisabled :: Bool -> IO ([Char], GValue)
+constructDOMHTMLButtonElementDisabled val = constructObjectPropertyBool "disabled" val
+
+data DOMHTMLButtonElementDisabledPropertyInfo
+instance AttrInfo DOMHTMLButtonElementDisabledPropertyInfo where
+    type AttrAllowedOps DOMHTMLButtonElementDisabledPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLButtonElementDisabledPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLButtonElementDisabledPropertyInfo = DOMHTMLButtonElementK
+    type AttrGetType DOMHTMLButtonElementDisabledPropertyInfo = Bool
+    type AttrLabel DOMHTMLButtonElementDisabledPropertyInfo = "DOMHTMLButtonElement::disabled"
+    attrGet _ = getDOMHTMLButtonElementDisabled
+    attrSet _ = setDOMHTMLButtonElementDisabled
+    attrConstruct _ = constructDOMHTMLButtonElementDisabled
+
+-- VVV Prop "form"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLButtonElementForm :: (MonadIO m, DOMHTMLButtonElementK o) => o -> m DOMHTMLFormElement
+getDOMHTMLButtonElementForm obj = liftIO $ getObjectPropertyObject obj "form" DOMHTMLFormElement
+
+data DOMHTMLButtonElementFormPropertyInfo
+instance AttrInfo DOMHTMLButtonElementFormPropertyInfo where
+    type AttrAllowedOps DOMHTMLButtonElementFormPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLButtonElementFormPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLButtonElementFormPropertyInfo = DOMHTMLButtonElementK
+    type AttrGetType DOMHTMLButtonElementFormPropertyInfo = DOMHTMLFormElement
+    type AttrLabel DOMHTMLButtonElementFormPropertyInfo = "DOMHTMLButtonElement::form"
+    attrGet _ = getDOMHTMLButtonElementForm
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "form-action"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLButtonElementFormAction :: (MonadIO m, DOMHTMLButtonElementK o) => o -> m T.Text
+getDOMHTMLButtonElementFormAction obj = liftIO $ getObjectPropertyString obj "form-action"
+
+setDOMHTMLButtonElementFormAction :: (MonadIO m, DOMHTMLButtonElementK o) => o -> T.Text -> m ()
+setDOMHTMLButtonElementFormAction obj val = liftIO $ setObjectPropertyString obj "form-action" val
+
+constructDOMHTMLButtonElementFormAction :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLButtonElementFormAction val = constructObjectPropertyString "form-action" val
+
+data DOMHTMLButtonElementFormActionPropertyInfo
+instance AttrInfo DOMHTMLButtonElementFormActionPropertyInfo where
+    type AttrAllowedOps DOMHTMLButtonElementFormActionPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLButtonElementFormActionPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLButtonElementFormActionPropertyInfo = DOMHTMLButtonElementK
+    type AttrGetType DOMHTMLButtonElementFormActionPropertyInfo = T.Text
+    type AttrLabel DOMHTMLButtonElementFormActionPropertyInfo = "DOMHTMLButtonElement::form-action"
+    attrGet _ = getDOMHTMLButtonElementFormAction
+    attrSet _ = setDOMHTMLButtonElementFormAction
+    attrConstruct _ = constructDOMHTMLButtonElementFormAction
+
+-- VVV Prop "form-enctype"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLButtonElementFormEnctype :: (MonadIO m, DOMHTMLButtonElementK o) => o -> m T.Text
+getDOMHTMLButtonElementFormEnctype obj = liftIO $ getObjectPropertyString obj "form-enctype"
+
+setDOMHTMLButtonElementFormEnctype :: (MonadIO m, DOMHTMLButtonElementK o) => o -> T.Text -> m ()
+setDOMHTMLButtonElementFormEnctype obj val = liftIO $ setObjectPropertyString obj "form-enctype" val
+
+constructDOMHTMLButtonElementFormEnctype :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLButtonElementFormEnctype val = constructObjectPropertyString "form-enctype" val
+
+data DOMHTMLButtonElementFormEnctypePropertyInfo
+instance AttrInfo DOMHTMLButtonElementFormEnctypePropertyInfo where
+    type AttrAllowedOps DOMHTMLButtonElementFormEnctypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLButtonElementFormEnctypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLButtonElementFormEnctypePropertyInfo = DOMHTMLButtonElementK
+    type AttrGetType DOMHTMLButtonElementFormEnctypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLButtonElementFormEnctypePropertyInfo = "DOMHTMLButtonElement::form-enctype"
+    attrGet _ = getDOMHTMLButtonElementFormEnctype
+    attrSet _ = setDOMHTMLButtonElementFormEnctype
+    attrConstruct _ = constructDOMHTMLButtonElementFormEnctype
+
+-- VVV Prop "form-method"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLButtonElementFormMethod :: (MonadIO m, DOMHTMLButtonElementK o) => o -> m T.Text
+getDOMHTMLButtonElementFormMethod obj = liftIO $ getObjectPropertyString obj "form-method"
+
+setDOMHTMLButtonElementFormMethod :: (MonadIO m, DOMHTMLButtonElementK o) => o -> T.Text -> m ()
+setDOMHTMLButtonElementFormMethod obj val = liftIO $ setObjectPropertyString obj "form-method" val
+
+constructDOMHTMLButtonElementFormMethod :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLButtonElementFormMethod val = constructObjectPropertyString "form-method" val
+
+data DOMHTMLButtonElementFormMethodPropertyInfo
+instance AttrInfo DOMHTMLButtonElementFormMethodPropertyInfo where
+    type AttrAllowedOps DOMHTMLButtonElementFormMethodPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLButtonElementFormMethodPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLButtonElementFormMethodPropertyInfo = DOMHTMLButtonElementK
+    type AttrGetType DOMHTMLButtonElementFormMethodPropertyInfo = T.Text
+    type AttrLabel DOMHTMLButtonElementFormMethodPropertyInfo = "DOMHTMLButtonElement::form-method"
+    attrGet _ = getDOMHTMLButtonElementFormMethod
+    attrSet _ = setDOMHTMLButtonElementFormMethod
+    attrConstruct _ = constructDOMHTMLButtonElementFormMethod
+
+-- VVV Prop "form-no-validate"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLButtonElementFormNoValidate :: (MonadIO m, DOMHTMLButtonElementK o) => o -> m Bool
+getDOMHTMLButtonElementFormNoValidate obj = liftIO $ getObjectPropertyBool obj "form-no-validate"
+
+setDOMHTMLButtonElementFormNoValidate :: (MonadIO m, DOMHTMLButtonElementK o) => o -> Bool -> m ()
+setDOMHTMLButtonElementFormNoValidate obj val = liftIO $ setObjectPropertyBool obj "form-no-validate" val
+
+constructDOMHTMLButtonElementFormNoValidate :: Bool -> IO ([Char], GValue)
+constructDOMHTMLButtonElementFormNoValidate val = constructObjectPropertyBool "form-no-validate" val
+
+data DOMHTMLButtonElementFormNoValidatePropertyInfo
+instance AttrInfo DOMHTMLButtonElementFormNoValidatePropertyInfo where
+    type AttrAllowedOps DOMHTMLButtonElementFormNoValidatePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLButtonElementFormNoValidatePropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLButtonElementFormNoValidatePropertyInfo = DOMHTMLButtonElementK
+    type AttrGetType DOMHTMLButtonElementFormNoValidatePropertyInfo = Bool
+    type AttrLabel DOMHTMLButtonElementFormNoValidatePropertyInfo = "DOMHTMLButtonElement::form-no-validate"
+    attrGet _ = getDOMHTMLButtonElementFormNoValidate
+    attrSet _ = setDOMHTMLButtonElementFormNoValidate
+    attrConstruct _ = constructDOMHTMLButtonElementFormNoValidate
+
+-- VVV Prop "form-target"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLButtonElementFormTarget :: (MonadIO m, DOMHTMLButtonElementK o) => o -> m T.Text
+getDOMHTMLButtonElementFormTarget obj = liftIO $ getObjectPropertyString obj "form-target"
+
+setDOMHTMLButtonElementFormTarget :: (MonadIO m, DOMHTMLButtonElementK o) => o -> T.Text -> m ()
+setDOMHTMLButtonElementFormTarget obj val = liftIO $ setObjectPropertyString obj "form-target" val
+
+constructDOMHTMLButtonElementFormTarget :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLButtonElementFormTarget val = constructObjectPropertyString "form-target" val
+
+data DOMHTMLButtonElementFormTargetPropertyInfo
+instance AttrInfo DOMHTMLButtonElementFormTargetPropertyInfo where
+    type AttrAllowedOps DOMHTMLButtonElementFormTargetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLButtonElementFormTargetPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLButtonElementFormTargetPropertyInfo = DOMHTMLButtonElementK
+    type AttrGetType DOMHTMLButtonElementFormTargetPropertyInfo = T.Text
+    type AttrLabel DOMHTMLButtonElementFormTargetPropertyInfo = "DOMHTMLButtonElement::form-target"
+    attrGet _ = getDOMHTMLButtonElementFormTarget
+    attrSet _ = setDOMHTMLButtonElementFormTarget
+    attrConstruct _ = constructDOMHTMLButtonElementFormTarget
+
+-- VVV Prop "labels"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNodeList"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLButtonElementLabels :: (MonadIO m, DOMHTMLButtonElementK o) => o -> m DOMNodeList
+getDOMHTMLButtonElementLabels obj = liftIO $ getObjectPropertyObject obj "labels" DOMNodeList
+
+data DOMHTMLButtonElementLabelsPropertyInfo
+instance AttrInfo DOMHTMLButtonElementLabelsPropertyInfo where
+    type AttrAllowedOps DOMHTMLButtonElementLabelsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLButtonElementLabelsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLButtonElementLabelsPropertyInfo = DOMHTMLButtonElementK
+    type AttrGetType DOMHTMLButtonElementLabelsPropertyInfo = DOMNodeList
+    type AttrLabel DOMHTMLButtonElementLabelsPropertyInfo = "DOMHTMLButtonElement::labels"
+    attrGet _ = getDOMHTMLButtonElementLabels
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLButtonElementName :: (MonadIO m, DOMHTMLButtonElementK o) => o -> m T.Text
+getDOMHTMLButtonElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLButtonElementName :: (MonadIO m, DOMHTMLButtonElementK o) => o -> T.Text -> m ()
+setDOMHTMLButtonElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLButtonElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLButtonElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLButtonElementNamePropertyInfo
+instance AttrInfo DOMHTMLButtonElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLButtonElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLButtonElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLButtonElementNamePropertyInfo = DOMHTMLButtonElementK
+    type AttrGetType DOMHTMLButtonElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLButtonElementNamePropertyInfo = "DOMHTMLButtonElement::name"
+    attrGet _ = getDOMHTMLButtonElementName
+    attrSet _ = setDOMHTMLButtonElementName
+    attrConstruct _ = constructDOMHTMLButtonElementName
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLButtonElementType :: (MonadIO m, DOMHTMLButtonElementK o) => o -> m T.Text
+getDOMHTMLButtonElementType obj = liftIO $ getObjectPropertyString obj "type"
+
+setDOMHTMLButtonElementType :: (MonadIO m, DOMHTMLButtonElementK o) => o -> T.Text -> m ()
+setDOMHTMLButtonElementType obj val = liftIO $ setObjectPropertyString obj "type" val
+
+constructDOMHTMLButtonElementType :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLButtonElementType val = constructObjectPropertyString "type" val
+
+data DOMHTMLButtonElementTypePropertyInfo
+instance AttrInfo DOMHTMLButtonElementTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLButtonElementTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLButtonElementTypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLButtonElementTypePropertyInfo = DOMHTMLButtonElementK
+    type AttrGetType DOMHTMLButtonElementTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLButtonElementTypePropertyInfo = "DOMHTMLButtonElement::type"
+    attrGet _ = getDOMHTMLButtonElementType
+    attrSet _ = setDOMHTMLButtonElementType
+    attrConstruct _ = constructDOMHTMLButtonElementType
+
+-- VVV Prop "validation-message"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLButtonElementValidationMessage :: (MonadIO m, DOMHTMLButtonElementK o) => o -> m T.Text
+getDOMHTMLButtonElementValidationMessage obj = liftIO $ getObjectPropertyString obj "validation-message"
+
+data DOMHTMLButtonElementValidationMessagePropertyInfo
+instance AttrInfo DOMHTMLButtonElementValidationMessagePropertyInfo where
+    type AttrAllowedOps DOMHTMLButtonElementValidationMessagePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLButtonElementValidationMessagePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLButtonElementValidationMessagePropertyInfo = DOMHTMLButtonElementK
+    type AttrGetType DOMHTMLButtonElementValidationMessagePropertyInfo = T.Text
+    type AttrLabel DOMHTMLButtonElementValidationMessagePropertyInfo = "DOMHTMLButtonElement::validation-message"
+    attrGet _ = getDOMHTMLButtonElementValidationMessage
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "value"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLButtonElementValue :: (MonadIO m, DOMHTMLButtonElementK o) => o -> m T.Text
+getDOMHTMLButtonElementValue obj = liftIO $ getObjectPropertyString obj "value"
+
+setDOMHTMLButtonElementValue :: (MonadIO m, DOMHTMLButtonElementK o) => o -> T.Text -> m ()
+setDOMHTMLButtonElementValue obj val = liftIO $ setObjectPropertyString obj "value" val
+
+constructDOMHTMLButtonElementValue :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLButtonElementValue val = constructObjectPropertyString "value" val
+
+data DOMHTMLButtonElementValuePropertyInfo
+instance AttrInfo DOMHTMLButtonElementValuePropertyInfo where
+    type AttrAllowedOps DOMHTMLButtonElementValuePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLButtonElementValuePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLButtonElementValuePropertyInfo = DOMHTMLButtonElementK
+    type AttrGetType DOMHTMLButtonElementValuePropertyInfo = T.Text
+    type AttrLabel DOMHTMLButtonElementValuePropertyInfo = "DOMHTMLButtonElement::value"
+    attrGet _ = getDOMHTMLButtonElementValue
+    attrSet _ = setDOMHTMLButtonElementValue
+    attrConstruct _ = constructDOMHTMLButtonElementValue
+
+-- VVV Prop "will-validate"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLButtonElementWillValidate :: (MonadIO m, DOMHTMLButtonElementK o) => o -> m Bool
+getDOMHTMLButtonElementWillValidate obj = liftIO $ getObjectPropertyBool obj "will-validate"
+
+data DOMHTMLButtonElementWillValidatePropertyInfo
+instance AttrInfo DOMHTMLButtonElementWillValidatePropertyInfo where
+    type AttrAllowedOps DOMHTMLButtonElementWillValidatePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLButtonElementWillValidatePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLButtonElementWillValidatePropertyInfo = DOMHTMLButtonElementK
+    type AttrGetType DOMHTMLButtonElementWillValidatePropertyInfo = Bool
+    type AttrLabel DOMHTMLButtonElementWillValidatePropertyInfo = "DOMHTMLButtonElement::will-validate"
+    attrGet _ = getDOMHTMLButtonElementWillValidate
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMHTMLButtonElement = DOMHTMLButtonElementAttributeList
+type DOMHTMLButtonElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("autofocus", DOMHTMLButtonElementAutofocusPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("disabled", DOMHTMLButtonElementDisabledPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("form", DOMHTMLButtonElementFormPropertyInfo), '("form-action", DOMHTMLButtonElementFormActionPropertyInfo), '("form-enctype", DOMHTMLButtonElementFormEnctypePropertyInfo), '("form-method", DOMHTMLButtonElementFormMethodPropertyInfo), '("form-no-validate", DOMHTMLButtonElementFormNoValidatePropertyInfo), '("form-target", DOMHTMLButtonElementFormTargetPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("labels", DOMHTMLButtonElementLabelsPropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("name", DOMHTMLButtonElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLButtonElementTypePropertyInfo), '("validation-message", DOMHTMLButtonElementValidationMessagePropertyInfo), '("value", DOMHTMLButtonElementValuePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("will-validate", DOMHTMLButtonElementWillValidatePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLButtonElement = DOMHTMLButtonElementSignalList
+type DOMHTMLButtonElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLButtonElement::get_autofocus
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_button_element_get_autofocus" webkit_dom_html_button_element_get_autofocus :: 
+    Ptr DOMHTMLButtonElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLButtonElement"
+    IO CInt
+
+
+dOMHTMLButtonElementGetAutofocus ::
+    (MonadIO m, DOMHTMLButtonElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLButtonElementGetAutofocus _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_button_element_get_autofocus _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLButtonElement::get_button_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_button_element_get_button_type" webkit_dom_html_button_element_get_button_type :: 
+    Ptr DOMHTMLButtonElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLButtonElement"
+    IO CString
+
+
+dOMHTMLButtonElementGetButtonType ::
+    (MonadIO m, DOMHTMLButtonElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLButtonElementGetButtonType _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_button_element_get_button_type _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_button_element_get_button_type" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLButtonElement::get_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_button_element_get_disabled" webkit_dom_html_button_element_get_disabled :: 
+    Ptr DOMHTMLButtonElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLButtonElement"
+    IO CInt
+
+
+dOMHTMLButtonElementGetDisabled ::
+    (MonadIO m, DOMHTMLButtonElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLButtonElementGetDisabled _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_button_element_get_disabled _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLButtonElement::get_form
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_button_element_get_form" webkit_dom_html_button_element_get_form :: 
+    Ptr DOMHTMLButtonElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLButtonElement"
+    IO (Ptr DOMHTMLFormElement)
+
+
+dOMHTMLButtonElementGetForm ::
+    (MonadIO m, DOMHTMLButtonElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLFormElement
+dOMHTMLButtonElementGetForm _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_button_element_get_form _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_button_element_get_form" result
+    result' <- (newObject DOMHTMLFormElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLButtonElement::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_button_element_get_name" webkit_dom_html_button_element_get_name :: 
+    Ptr DOMHTMLButtonElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLButtonElement"
+    IO CString
+
+
+dOMHTMLButtonElementGetName ::
+    (MonadIO m, DOMHTMLButtonElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLButtonElementGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_button_element_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_button_element_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLButtonElement::get_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_button_element_get_value" webkit_dom_html_button_element_get_value :: 
+    Ptr DOMHTMLButtonElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLButtonElement"
+    IO CString
+
+
+dOMHTMLButtonElementGetValue ::
+    (MonadIO m, DOMHTMLButtonElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLButtonElementGetValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_button_element_get_value _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_button_element_get_value" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLButtonElement::get_will_validate
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_button_element_get_will_validate" webkit_dom_html_button_element_get_will_validate :: 
+    Ptr DOMHTMLButtonElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLButtonElement"
+    IO CInt
+
+
+dOMHTMLButtonElementGetWillValidate ::
+    (MonadIO m, DOMHTMLButtonElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLButtonElementGetWillValidate _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_button_element_get_will_validate _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLButtonElement::set_autofocus
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_button_element_set_autofocus" webkit_dom_html_button_element_set_autofocus :: 
+    Ptr DOMHTMLButtonElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLButtonElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLButtonElementSetAutofocus ::
+    (MonadIO m, DOMHTMLButtonElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLButtonElementSetAutofocus _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_button_element_set_autofocus _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLButtonElement::set_button_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_button_element_set_button_type" webkit_dom_html_button_element_set_button_type :: 
+    Ptr DOMHTMLButtonElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLButtonElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLButtonElementSetButtonType ::
+    (MonadIO m, DOMHTMLButtonElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLButtonElementSetButtonType _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_button_element_set_button_type _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLButtonElement::set_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_button_element_set_disabled" webkit_dom_html_button_element_set_disabled :: 
+    Ptr DOMHTMLButtonElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLButtonElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLButtonElementSetDisabled ::
+    (MonadIO m, DOMHTMLButtonElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLButtonElementSetDisabled _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_button_element_set_disabled _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLButtonElement::set_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_button_element_set_name" webkit_dom_html_button_element_set_name :: 
+    Ptr DOMHTMLButtonElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLButtonElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLButtonElementSetName ::
+    (MonadIO m, DOMHTMLButtonElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLButtonElementSetName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_button_element_set_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLButtonElement::set_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLButtonElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_button_element_set_value" webkit_dom_html_button_element_set_value :: 
+    Ptr DOMHTMLButtonElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLButtonElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLButtonElementSetValue ::
+    (MonadIO m, DOMHTMLButtonElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLButtonElementSetValue _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_button_element_set_value _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLButtonElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLButtonElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLButtonElement.hs-boot
@@ -0,0 +1,27 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLButtonElement = DOMHTMLButtonElement (ForeignPtr DOMHTMLButtonElement)
+instance GObject DOMHTMLButtonElement where
+class GObject o => DOMHTMLButtonElementK o
+instance (GObject o, IsDescendantOf DOMHTMLButtonElement o) => DOMHTMLButtonElementK o
+data DOMHTMLButtonElementAutofocusPropertyInfo
+data DOMHTMLButtonElementDisabledPropertyInfo
+data DOMHTMLButtonElementFormPropertyInfo
+data DOMHTMLButtonElementFormActionPropertyInfo
+data DOMHTMLButtonElementFormEnctypePropertyInfo
+data DOMHTMLButtonElementFormMethodPropertyInfo
+data DOMHTMLButtonElementFormNoValidatePropertyInfo
+data DOMHTMLButtonElementFormTargetPropertyInfo
+data DOMHTMLButtonElementLabelsPropertyInfo
+data DOMHTMLButtonElementNamePropertyInfo
+data DOMHTMLButtonElementTypePropertyInfo
+data DOMHTMLButtonElementValidationMessagePropertyInfo
+data DOMHTMLButtonElementValuePropertyInfo
+data DOMHTMLButtonElementWillValidatePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLCanvasElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLCanvasElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLCanvasElement.hs
@@ -0,0 +1,242 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLCanvasElement
+    ( 
+
+-- * Exported types
+    DOMHTMLCanvasElement(..)                ,
+    DOMHTMLCanvasElementK                   ,
+    toDOMHTMLCanvasElement                  ,
+    noDOMHTMLCanvasElement                  ,
+
+
+ -- * Methods
+-- ** dOMHTMLCanvasElementGetHeight
+    dOMHTMLCanvasElementGetHeight           ,
+
+
+-- ** dOMHTMLCanvasElementGetWidth
+    dOMHTMLCanvasElementGetWidth            ,
+
+
+-- ** dOMHTMLCanvasElementSetHeight
+    dOMHTMLCanvasElementSetHeight           ,
+
+
+-- ** dOMHTMLCanvasElementSetWidth
+    dOMHTMLCanvasElementSetWidth            ,
+
+
+
+
+ -- * Properties
+-- ** Height
+    DOMHTMLCanvasElementHeightPropertyInfo  ,
+    constructDOMHTMLCanvasElementHeight     ,
+    getDOMHTMLCanvasElementHeight           ,
+    setDOMHTMLCanvasElementHeight           ,
+
+
+-- ** Width
+    DOMHTMLCanvasElementWidthPropertyInfo   ,
+    constructDOMHTMLCanvasElementWidth      ,
+    getDOMHTMLCanvasElementWidth            ,
+    setDOMHTMLCanvasElementWidth            ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLCanvasElement = DOMHTMLCanvasElement (ForeignPtr DOMHTMLCanvasElement)
+foreign import ccall "webkit_dom_html_canvas_element_get_type"
+    c_webkit_dom_html_canvas_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLCanvasElement = DOMHTMLCanvasElementParentTypes
+type DOMHTMLCanvasElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLCanvasElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_canvas_element_get_type
+    
+
+class GObject o => DOMHTMLCanvasElementK o
+instance (GObject o, IsDescendantOf DOMHTMLCanvasElement o) => DOMHTMLCanvasElementK o
+
+toDOMHTMLCanvasElement :: DOMHTMLCanvasElementK o => o -> IO DOMHTMLCanvasElement
+toDOMHTMLCanvasElement = unsafeCastTo DOMHTMLCanvasElement
+
+noDOMHTMLCanvasElement :: Maybe DOMHTMLCanvasElement
+noDOMHTMLCanvasElement = Nothing
+
+-- VVV Prop "height"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLCanvasElementHeight :: (MonadIO m, DOMHTMLCanvasElementK o) => o -> m Int64
+getDOMHTMLCanvasElementHeight obj = liftIO $ getObjectPropertyInt64 obj "height"
+
+setDOMHTMLCanvasElementHeight :: (MonadIO m, DOMHTMLCanvasElementK o) => o -> Int64 -> m ()
+setDOMHTMLCanvasElementHeight obj val = liftIO $ setObjectPropertyInt64 obj "height" val
+
+constructDOMHTMLCanvasElementHeight :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLCanvasElementHeight val = constructObjectPropertyInt64 "height" val
+
+data DOMHTMLCanvasElementHeightPropertyInfo
+instance AttrInfo DOMHTMLCanvasElementHeightPropertyInfo where
+    type AttrAllowedOps DOMHTMLCanvasElementHeightPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLCanvasElementHeightPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLCanvasElementHeightPropertyInfo = DOMHTMLCanvasElementK
+    type AttrGetType DOMHTMLCanvasElementHeightPropertyInfo = Int64
+    type AttrLabel DOMHTMLCanvasElementHeightPropertyInfo = "DOMHTMLCanvasElement::height"
+    attrGet _ = getDOMHTMLCanvasElementHeight
+    attrSet _ = setDOMHTMLCanvasElementHeight
+    attrConstruct _ = constructDOMHTMLCanvasElementHeight
+
+-- VVV Prop "width"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLCanvasElementWidth :: (MonadIO m, DOMHTMLCanvasElementK o) => o -> m Int64
+getDOMHTMLCanvasElementWidth obj = liftIO $ getObjectPropertyInt64 obj "width"
+
+setDOMHTMLCanvasElementWidth :: (MonadIO m, DOMHTMLCanvasElementK o) => o -> Int64 -> m ()
+setDOMHTMLCanvasElementWidth obj val = liftIO $ setObjectPropertyInt64 obj "width" val
+
+constructDOMHTMLCanvasElementWidth :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLCanvasElementWidth val = constructObjectPropertyInt64 "width" val
+
+data DOMHTMLCanvasElementWidthPropertyInfo
+instance AttrInfo DOMHTMLCanvasElementWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLCanvasElementWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLCanvasElementWidthPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLCanvasElementWidthPropertyInfo = DOMHTMLCanvasElementK
+    type AttrGetType DOMHTMLCanvasElementWidthPropertyInfo = Int64
+    type AttrLabel DOMHTMLCanvasElementWidthPropertyInfo = "DOMHTMLCanvasElement::width"
+    attrGet _ = getDOMHTMLCanvasElementWidth
+    attrSet _ = setDOMHTMLCanvasElementWidth
+    attrConstruct _ = constructDOMHTMLCanvasElementWidth
+
+type instance AttributeList DOMHTMLCanvasElement = DOMHTMLCanvasElementAttributeList
+type DOMHTMLCanvasElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("height", DOMHTMLCanvasElementHeightPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("width", DOMHTMLCanvasElementWidthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLCanvasElement = DOMHTMLCanvasElementSignalList
+type DOMHTMLCanvasElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLCanvasElement::get_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLCanvasElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLCanvasElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_canvas_element_get_height" webkit_dom_html_canvas_element_get_height :: 
+    Ptr DOMHTMLCanvasElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLCanvasElement"
+    IO Int64
+
+
+dOMHTMLCanvasElementGetHeight ::
+    (MonadIO m, DOMHTMLCanvasElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLCanvasElementGetHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_canvas_element_get_height _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLCanvasElement::get_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLCanvasElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLCanvasElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_canvas_element_get_width" webkit_dom_html_canvas_element_get_width :: 
+    Ptr DOMHTMLCanvasElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLCanvasElement"
+    IO Int64
+
+
+dOMHTMLCanvasElementGetWidth ::
+    (MonadIO m, DOMHTMLCanvasElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLCanvasElementGetWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_canvas_element_get_width _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLCanvasElement::set_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLCanvasElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLCanvasElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_canvas_element_set_height" webkit_dom_html_canvas_element_set_height :: 
+    Ptr DOMHTMLCanvasElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLCanvasElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLCanvasElementSetHeight ::
+    (MonadIO m, DOMHTMLCanvasElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLCanvasElementSetHeight _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_canvas_element_set_height _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLCanvasElement::set_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLCanvasElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLCanvasElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_canvas_element_set_width" webkit_dom_html_canvas_element_set_width :: 
+    Ptr DOMHTMLCanvasElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLCanvasElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLCanvasElementSetWidth ::
+    (MonadIO m, DOMHTMLCanvasElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLCanvasElementSetWidth _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_canvas_element_set_width _obj' value
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLCanvasElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLCanvasElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLCanvasElement.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLCanvasElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLCanvasElement = DOMHTMLCanvasElement (ForeignPtr DOMHTMLCanvasElement)
+instance GObject DOMHTMLCanvasElement where
+class GObject o => DOMHTMLCanvasElementK o
+instance (GObject o, IsDescendantOf DOMHTMLCanvasElement o) => DOMHTMLCanvasElementK o
+data DOMHTMLCanvasElementHeightPropertyInfo
+data DOMHTMLCanvasElementWidthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLCollection.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLCollection.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLCollection.hs
@@ -0,0 +1,181 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLCollection
+    ( 
+
+-- * Exported types
+    DOMHTMLCollection(..)                   ,
+    DOMHTMLCollectionK                      ,
+    toDOMHTMLCollection                     ,
+    noDOMHTMLCollection                     ,
+
+
+ -- * Methods
+-- ** dOMHTMLCollectionGetLength
+    dOMHTMLCollectionGetLength              ,
+
+
+-- ** dOMHTMLCollectionItem
+    dOMHTMLCollectionItem                   ,
+
+
+-- ** dOMHTMLCollectionNamedItem
+    dOMHTMLCollectionNamedItem              ,
+
+
+
+
+ -- * Properties
+-- ** Length
+    DOMHTMLCollectionLengthPropertyInfo     ,
+    getDOMHTMLCollectionLength              ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLCollection = DOMHTMLCollection (ForeignPtr DOMHTMLCollection)
+foreign import ccall "webkit_dom_html_collection_get_type"
+    c_webkit_dom_html_collection_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLCollection = DOMHTMLCollectionParentTypes
+type DOMHTMLCollectionParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMHTMLCollection where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_collection_get_type
+    
+
+class GObject o => DOMHTMLCollectionK o
+instance (GObject o, IsDescendantOf DOMHTMLCollection o) => DOMHTMLCollectionK o
+
+toDOMHTMLCollection :: DOMHTMLCollectionK o => o -> IO DOMHTMLCollection
+toDOMHTMLCollection = unsafeCastTo DOMHTMLCollection
+
+noDOMHTMLCollection :: Maybe DOMHTMLCollection
+noDOMHTMLCollection = Nothing
+
+-- VVV Prop "length"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLCollectionLength :: (MonadIO m, DOMHTMLCollectionK o) => o -> m Word64
+getDOMHTMLCollectionLength obj = liftIO $ getObjectPropertyUInt64 obj "length"
+
+data DOMHTMLCollectionLengthPropertyInfo
+instance AttrInfo DOMHTMLCollectionLengthPropertyInfo where
+    type AttrAllowedOps DOMHTMLCollectionLengthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLCollectionLengthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLCollectionLengthPropertyInfo = DOMHTMLCollectionK
+    type AttrGetType DOMHTMLCollectionLengthPropertyInfo = Word64
+    type AttrLabel DOMHTMLCollectionLengthPropertyInfo = "DOMHTMLCollection::length"
+    attrGet _ = getDOMHTMLCollectionLength
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMHTMLCollection = DOMHTMLCollectionAttributeList
+type DOMHTMLCollectionAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("length", DOMHTMLCollectionLengthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLCollection = DOMHTMLCollectionSignalList
+type DOMHTMLCollectionSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLCollection::get_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLCollection", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLCollection", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_collection_get_length" webkit_dom_html_collection_get_length :: 
+    Ptr DOMHTMLCollection ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+    IO Word64
+
+
+dOMHTMLCollectionGetLength ::
+    (MonadIO m, DOMHTMLCollectionK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMHTMLCollectionGetLength _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_collection_get_length _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLCollection::item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLCollection", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLCollection", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_collection_item" webkit_dom_html_collection_item :: 
+    Ptr DOMHTMLCollection ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+    Word64 ->                               -- index : TBasicType TUInt64
+    IO (Ptr DOMNode)
+
+
+dOMHTMLCollectionItem ::
+    (MonadIO m, DOMHTMLCollectionK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- index
+    m DOMNode
+dOMHTMLCollectionItem _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_collection_item _obj' index
+    checkUnexpectedReturnNULL "webkit_dom_html_collection_item" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLCollection::named_item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLCollection", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLCollection", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_collection_named_item" webkit_dom_html_collection_named_item :: 
+    Ptr DOMHTMLCollection ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+    CString ->                              -- name : TBasicType TUTF8
+    IO (Ptr DOMNode)
+
+
+dOMHTMLCollectionNamedItem ::
+    (MonadIO m, DOMHTMLCollectionK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- name
+    m DOMNode
+dOMHTMLCollectionNamedItem _obj name = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    name' <- textToCString name
+    result <- webkit_dom_html_collection_named_item _obj' name'
+    checkUnexpectedReturnNULL "webkit_dom_html_collection_named_item" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    freeMem name'
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLCollection.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLCollection.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLCollection.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLCollection where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLCollection = DOMHTMLCollection (ForeignPtr DOMHTMLCollection)
+instance GObject DOMHTMLCollection where
+class GObject o => DOMHTMLCollectionK o
+instance (GObject o, IsDescendantOf DOMHTMLCollection o) => DOMHTMLCollectionK o
+data DOMHTMLCollectionLengthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLDListElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLDListElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLDListElement.hs
@@ -0,0 +1,155 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLDListElement
+    ( 
+
+-- * Exported types
+    DOMHTMLDListElement(..)                 ,
+    DOMHTMLDListElementK                    ,
+    toDOMHTMLDListElement                   ,
+    noDOMHTMLDListElement                   ,
+
+
+ -- * Methods
+-- ** dOMHTMLDListElementGetCompact
+    dOMHTMLDListElementGetCompact           ,
+
+
+-- ** dOMHTMLDListElementSetCompact
+    dOMHTMLDListElementSetCompact           ,
+
+
+
+
+ -- * Properties
+-- ** Compact
+    DOMHTMLDListElementCompactPropertyInfo  ,
+    constructDOMHTMLDListElementCompact     ,
+    getDOMHTMLDListElementCompact           ,
+    setDOMHTMLDListElementCompact           ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLDListElement = DOMHTMLDListElement (ForeignPtr DOMHTMLDListElement)
+foreign import ccall "webkit_dom_html_d_list_element_get_type"
+    c_webkit_dom_html_d_list_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLDListElement = DOMHTMLDListElementParentTypes
+type DOMHTMLDListElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLDListElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_d_list_element_get_type
+    
+
+class GObject o => DOMHTMLDListElementK o
+instance (GObject o, IsDescendantOf DOMHTMLDListElement o) => DOMHTMLDListElementK o
+
+toDOMHTMLDListElement :: DOMHTMLDListElementK o => o -> IO DOMHTMLDListElement
+toDOMHTMLDListElement = unsafeCastTo DOMHTMLDListElement
+
+noDOMHTMLDListElement :: Maybe DOMHTMLDListElement
+noDOMHTMLDListElement = Nothing
+
+-- VVV Prop "compact"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLDListElementCompact :: (MonadIO m, DOMHTMLDListElementK o) => o -> m Bool
+getDOMHTMLDListElementCompact obj = liftIO $ getObjectPropertyBool obj "compact"
+
+setDOMHTMLDListElementCompact :: (MonadIO m, DOMHTMLDListElementK o) => o -> Bool -> m ()
+setDOMHTMLDListElementCompact obj val = liftIO $ setObjectPropertyBool obj "compact" val
+
+constructDOMHTMLDListElementCompact :: Bool -> IO ([Char], GValue)
+constructDOMHTMLDListElementCompact val = constructObjectPropertyBool "compact" val
+
+data DOMHTMLDListElementCompactPropertyInfo
+instance AttrInfo DOMHTMLDListElementCompactPropertyInfo where
+    type AttrAllowedOps DOMHTMLDListElementCompactPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDListElementCompactPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLDListElementCompactPropertyInfo = DOMHTMLDListElementK
+    type AttrGetType DOMHTMLDListElementCompactPropertyInfo = Bool
+    type AttrLabel DOMHTMLDListElementCompactPropertyInfo = "DOMHTMLDListElement::compact"
+    attrGet _ = getDOMHTMLDListElementCompact
+    attrSet _ = setDOMHTMLDListElementCompact
+    attrConstruct _ = constructDOMHTMLDListElementCompact
+
+type instance AttributeList DOMHTMLDListElement = DOMHTMLDListElementAttributeList
+type DOMHTMLDListElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("compact", DOMHTMLDListElementCompactPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLDListElement = DOMHTMLDListElementSignalList
+type DOMHTMLDListElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLDListElement::get_compact
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_d_list_element_get_compact" webkit_dom_html_d_list_element_get_compact :: 
+    Ptr DOMHTMLDListElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDListElement"
+    IO CInt
+
+
+dOMHTMLDListElementGetCompact ::
+    (MonadIO m, DOMHTMLDListElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLDListElementGetCompact _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_d_list_element_get_compact _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLDListElement::set_compact
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_d_list_element_set_compact" webkit_dom_html_d_list_element_set_compact :: 
+    Ptr DOMHTMLDListElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDListElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLDListElementSetCompact ::
+    (MonadIO m, DOMHTMLDListElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLDListElementSetCompact _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_d_list_element_set_compact _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLDListElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLDListElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLDListElement.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLDListElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLDListElement = DOMHTMLDListElement (ForeignPtr DOMHTMLDListElement)
+instance GObject DOMHTMLDListElement where
+class GObject o => DOMHTMLDListElementK o
+instance (GObject o, IsDescendantOf DOMHTMLDListElement o) => DOMHTMLDListElementK o
+data DOMHTMLDListElementCompactPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLDirectoryElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLDirectoryElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLDirectoryElement.hs
@@ -0,0 +1,155 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLDirectoryElement
+    ( 
+
+-- * Exported types
+    DOMHTMLDirectoryElement(..)             ,
+    DOMHTMLDirectoryElementK                ,
+    toDOMHTMLDirectoryElement               ,
+    noDOMHTMLDirectoryElement               ,
+
+
+ -- * Methods
+-- ** dOMHTMLDirectoryElementGetCompact
+    dOMHTMLDirectoryElementGetCompact       ,
+
+
+-- ** dOMHTMLDirectoryElementSetCompact
+    dOMHTMLDirectoryElementSetCompact       ,
+
+
+
+
+ -- * Properties
+-- ** Compact
+    DOMHTMLDirectoryElementCompactPropertyInfo,
+    constructDOMHTMLDirectoryElementCompact ,
+    getDOMHTMLDirectoryElementCompact       ,
+    setDOMHTMLDirectoryElementCompact       ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLDirectoryElement = DOMHTMLDirectoryElement (ForeignPtr DOMHTMLDirectoryElement)
+foreign import ccall "webkit_dom_html_directory_element_get_type"
+    c_webkit_dom_html_directory_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLDirectoryElement = DOMHTMLDirectoryElementParentTypes
+type DOMHTMLDirectoryElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLDirectoryElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_directory_element_get_type
+    
+
+class GObject o => DOMHTMLDirectoryElementK o
+instance (GObject o, IsDescendantOf DOMHTMLDirectoryElement o) => DOMHTMLDirectoryElementK o
+
+toDOMHTMLDirectoryElement :: DOMHTMLDirectoryElementK o => o -> IO DOMHTMLDirectoryElement
+toDOMHTMLDirectoryElement = unsafeCastTo DOMHTMLDirectoryElement
+
+noDOMHTMLDirectoryElement :: Maybe DOMHTMLDirectoryElement
+noDOMHTMLDirectoryElement = Nothing
+
+-- VVV Prop "compact"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLDirectoryElementCompact :: (MonadIO m, DOMHTMLDirectoryElementK o) => o -> m Bool
+getDOMHTMLDirectoryElementCompact obj = liftIO $ getObjectPropertyBool obj "compact"
+
+setDOMHTMLDirectoryElementCompact :: (MonadIO m, DOMHTMLDirectoryElementK o) => o -> Bool -> m ()
+setDOMHTMLDirectoryElementCompact obj val = liftIO $ setObjectPropertyBool obj "compact" val
+
+constructDOMHTMLDirectoryElementCompact :: Bool -> IO ([Char], GValue)
+constructDOMHTMLDirectoryElementCompact val = constructObjectPropertyBool "compact" val
+
+data DOMHTMLDirectoryElementCompactPropertyInfo
+instance AttrInfo DOMHTMLDirectoryElementCompactPropertyInfo where
+    type AttrAllowedOps DOMHTMLDirectoryElementCompactPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDirectoryElementCompactPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLDirectoryElementCompactPropertyInfo = DOMHTMLDirectoryElementK
+    type AttrGetType DOMHTMLDirectoryElementCompactPropertyInfo = Bool
+    type AttrLabel DOMHTMLDirectoryElementCompactPropertyInfo = "DOMHTMLDirectoryElement::compact"
+    attrGet _ = getDOMHTMLDirectoryElementCompact
+    attrSet _ = setDOMHTMLDirectoryElementCompact
+    attrConstruct _ = constructDOMHTMLDirectoryElementCompact
+
+type instance AttributeList DOMHTMLDirectoryElement = DOMHTMLDirectoryElementAttributeList
+type DOMHTMLDirectoryElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("compact", DOMHTMLDirectoryElementCompactPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLDirectoryElement = DOMHTMLDirectoryElementSignalList
+type DOMHTMLDirectoryElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLDirectoryElement::get_compact
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDirectoryElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDirectoryElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_directory_element_get_compact" webkit_dom_html_directory_element_get_compact :: 
+    Ptr DOMHTMLDirectoryElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDirectoryElement"
+    IO CInt
+
+
+dOMHTMLDirectoryElementGetCompact ::
+    (MonadIO m, DOMHTMLDirectoryElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLDirectoryElementGetCompact _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_directory_element_get_compact _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLDirectoryElement::set_compact
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDirectoryElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDirectoryElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_directory_element_set_compact" webkit_dom_html_directory_element_set_compact :: 
+    Ptr DOMHTMLDirectoryElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDirectoryElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLDirectoryElementSetCompact ::
+    (MonadIO m, DOMHTMLDirectoryElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLDirectoryElementSetCompact _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_directory_element_set_compact _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLDirectoryElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLDirectoryElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLDirectoryElement.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLDirectoryElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLDirectoryElement = DOMHTMLDirectoryElement (ForeignPtr DOMHTMLDirectoryElement)
+instance GObject DOMHTMLDirectoryElement where
+class GObject o => DOMHTMLDirectoryElementK o
+instance (GObject o, IsDescendantOf DOMHTMLDirectoryElement o) => DOMHTMLDirectoryElementK o
+data DOMHTMLDirectoryElementCompactPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLDivElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLDivElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLDivElement.hs
@@ -0,0 +1,158 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLDivElement
+    ( 
+
+-- * Exported types
+    DOMHTMLDivElement(..)                   ,
+    DOMHTMLDivElementK                      ,
+    toDOMHTMLDivElement                     ,
+    noDOMHTMLDivElement                     ,
+
+
+ -- * Methods
+-- ** dOMHTMLDivElementGetAlign
+    dOMHTMLDivElementGetAlign               ,
+
+
+-- ** dOMHTMLDivElementSetAlign
+    dOMHTMLDivElementSetAlign               ,
+
+
+
+
+ -- * Properties
+-- ** Align
+    DOMHTMLDivElementAlignPropertyInfo      ,
+    constructDOMHTMLDivElementAlign         ,
+    getDOMHTMLDivElementAlign               ,
+    setDOMHTMLDivElementAlign               ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLDivElement = DOMHTMLDivElement (ForeignPtr DOMHTMLDivElement)
+foreign import ccall "webkit_dom_html_div_element_get_type"
+    c_webkit_dom_html_div_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLDivElement = DOMHTMLDivElementParentTypes
+type DOMHTMLDivElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLDivElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_div_element_get_type
+    
+
+class GObject o => DOMHTMLDivElementK o
+instance (GObject o, IsDescendantOf DOMHTMLDivElement o) => DOMHTMLDivElementK o
+
+toDOMHTMLDivElement :: DOMHTMLDivElementK o => o -> IO DOMHTMLDivElement
+toDOMHTMLDivElement = unsafeCastTo DOMHTMLDivElement
+
+noDOMHTMLDivElement :: Maybe DOMHTMLDivElement
+noDOMHTMLDivElement = Nothing
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLDivElementAlign :: (MonadIO m, DOMHTMLDivElementK o) => o -> m T.Text
+getDOMHTMLDivElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLDivElementAlign :: (MonadIO m, DOMHTMLDivElementK o) => o -> T.Text -> m ()
+setDOMHTMLDivElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLDivElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLDivElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLDivElementAlignPropertyInfo
+instance AttrInfo DOMHTMLDivElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLDivElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDivElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLDivElementAlignPropertyInfo = DOMHTMLDivElementK
+    type AttrGetType DOMHTMLDivElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLDivElementAlignPropertyInfo = "DOMHTMLDivElement::align"
+    attrGet _ = getDOMHTMLDivElementAlign
+    attrSet _ = setDOMHTMLDivElementAlign
+    attrConstruct _ = constructDOMHTMLDivElementAlign
+
+type instance AttributeList DOMHTMLDivElement = DOMHTMLDivElementAttributeList
+type DOMHTMLDivElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLDivElementAlignPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLDivElement = DOMHTMLDivElementSignalList
+type DOMHTMLDivElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLDivElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDivElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDivElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_div_element_get_align" webkit_dom_html_div_element_get_align :: 
+    Ptr DOMHTMLDivElement ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDivElement"
+    IO CString
+
+
+dOMHTMLDivElementGetAlign ::
+    (MonadIO m, DOMHTMLDivElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLDivElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_div_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_div_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLDivElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDivElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDivElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_div_element_set_align" webkit_dom_html_div_element_set_align :: 
+    Ptr DOMHTMLDivElement ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDivElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLDivElementSetAlign ::
+    (MonadIO m, DOMHTMLDivElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLDivElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_div_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLDivElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLDivElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLDivElement.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLDivElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLDivElement = DOMHTMLDivElement (ForeignPtr DOMHTMLDivElement)
+instance GObject DOMHTMLDivElement where
+class GObject o => DOMHTMLDivElementK o
+instance (GObject o, IsDescendantOf DOMHTMLDivElement o) => DOMHTMLDivElementK o
+data DOMHTMLDivElementAlignPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLDocument.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLDocument.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLDocument.hs
@@ -0,0 +1,1149 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLDocument
+    ( 
+
+-- * Exported types
+    DOMHTMLDocument(..)                     ,
+    DOMHTMLDocumentK                        ,
+    toDOMHTMLDocument                       ,
+    noDOMHTMLDocument                       ,
+
+
+ -- * Methods
+-- ** dOMHTMLDocumentCaptureEvents
+    dOMHTMLDocumentCaptureEvents            ,
+
+
+-- ** dOMHTMLDocumentClear
+    dOMHTMLDocumentClear                    ,
+
+
+-- ** dOMHTMLDocumentClose
+    dOMHTMLDocumentClose                    ,
+
+
+-- ** dOMHTMLDocumentGetAlinkColor
+    dOMHTMLDocumentGetAlinkColor            ,
+
+
+-- ** dOMHTMLDocumentGetBgColor
+    dOMHTMLDocumentGetBgColor               ,
+
+
+-- ** dOMHTMLDocumentGetCompatMode
+    dOMHTMLDocumentGetCompatMode            ,
+
+
+-- ** dOMHTMLDocumentGetDesignMode
+    dOMHTMLDocumentGetDesignMode            ,
+
+
+-- ** dOMHTMLDocumentGetDir
+    dOMHTMLDocumentGetDir                   ,
+
+
+-- ** dOMHTMLDocumentGetEmbeds
+    dOMHTMLDocumentGetEmbeds                ,
+
+
+-- ** dOMHTMLDocumentGetFgColor
+    dOMHTMLDocumentGetFgColor               ,
+
+
+-- ** dOMHTMLDocumentGetHeight
+    dOMHTMLDocumentGetHeight                ,
+
+
+-- ** dOMHTMLDocumentGetLinkColor
+    dOMHTMLDocumentGetLinkColor             ,
+
+
+-- ** dOMHTMLDocumentGetPlugins
+    dOMHTMLDocumentGetPlugins               ,
+
+
+-- ** dOMHTMLDocumentGetScripts
+    dOMHTMLDocumentGetScripts               ,
+
+
+-- ** dOMHTMLDocumentGetVlinkColor
+    dOMHTMLDocumentGetVlinkColor            ,
+
+
+-- ** dOMHTMLDocumentGetWidth
+    dOMHTMLDocumentGetWidth                 ,
+
+
+-- ** dOMHTMLDocumentReleaseEvents
+    dOMHTMLDocumentReleaseEvents            ,
+
+
+-- ** dOMHTMLDocumentSetAlinkColor
+    dOMHTMLDocumentSetAlinkColor            ,
+
+
+-- ** dOMHTMLDocumentSetBgColor
+    dOMHTMLDocumentSetBgColor               ,
+
+
+-- ** dOMHTMLDocumentSetDesignMode
+    dOMHTMLDocumentSetDesignMode            ,
+
+
+-- ** dOMHTMLDocumentSetDir
+    dOMHTMLDocumentSetDir                   ,
+
+
+-- ** dOMHTMLDocumentSetFgColor
+    dOMHTMLDocumentSetFgColor               ,
+
+
+-- ** dOMHTMLDocumentSetLinkColor
+    dOMHTMLDocumentSetLinkColor             ,
+
+
+-- ** dOMHTMLDocumentSetVlinkColor
+    dOMHTMLDocumentSetVlinkColor            ,
+
+
+
+
+ -- * Properties
+-- ** AlinkColor
+    DOMHTMLDocumentAlinkColorPropertyInfo   ,
+    constructDOMHTMLDocumentAlinkColor      ,
+    getDOMHTMLDocumentAlinkColor            ,
+    setDOMHTMLDocumentAlinkColor            ,
+
+
+-- ** BgColor
+    DOMHTMLDocumentBgColorPropertyInfo      ,
+    constructDOMHTMLDocumentBgColor         ,
+    getDOMHTMLDocumentBgColor               ,
+    setDOMHTMLDocumentBgColor               ,
+
+
+-- ** CompatMode
+    DOMHTMLDocumentCompatModePropertyInfo   ,
+    getDOMHTMLDocumentCompatMode            ,
+
+
+-- ** DesignMode
+    DOMHTMLDocumentDesignModePropertyInfo   ,
+    constructDOMHTMLDocumentDesignMode      ,
+    getDOMHTMLDocumentDesignMode            ,
+    setDOMHTMLDocumentDesignMode            ,
+
+
+-- ** Dir
+    DOMHTMLDocumentDirPropertyInfo          ,
+    constructDOMHTMLDocumentDir             ,
+    getDOMHTMLDocumentDir                   ,
+    setDOMHTMLDocumentDir                   ,
+
+
+-- ** Embeds
+    DOMHTMLDocumentEmbedsPropertyInfo       ,
+    getDOMHTMLDocumentEmbeds                ,
+
+
+-- ** FgColor
+    DOMHTMLDocumentFgColorPropertyInfo      ,
+    constructDOMHTMLDocumentFgColor         ,
+    getDOMHTMLDocumentFgColor               ,
+    setDOMHTMLDocumentFgColor               ,
+
+
+-- ** Height
+    DOMHTMLDocumentHeightPropertyInfo       ,
+    getDOMHTMLDocumentHeight                ,
+
+
+-- ** LinkColor
+    DOMHTMLDocumentLinkColorPropertyInfo    ,
+    constructDOMHTMLDocumentLinkColor       ,
+    getDOMHTMLDocumentLinkColor             ,
+    setDOMHTMLDocumentLinkColor             ,
+
+
+-- ** Plugins
+    DOMHTMLDocumentPluginsPropertyInfo      ,
+    getDOMHTMLDocumentPlugins               ,
+
+
+-- ** Scripts
+    DOMHTMLDocumentScriptsPropertyInfo      ,
+    getDOMHTMLDocumentScripts               ,
+
+
+-- ** VlinkColor
+    DOMHTMLDocumentVlinkColorPropertyInfo   ,
+    constructDOMHTMLDocumentVlinkColor      ,
+    getDOMHTMLDocumentVlinkColor            ,
+    setDOMHTMLDocumentVlinkColor            ,
+
+
+-- ** Width
+    DOMHTMLDocumentWidthPropertyInfo        ,
+    getDOMHTMLDocumentWidth                 ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLDocument = DOMHTMLDocument (ForeignPtr DOMHTMLDocument)
+foreign import ccall "webkit_dom_html_document_get_type"
+    c_webkit_dom_html_document_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLDocument = DOMHTMLDocumentParentTypes
+type DOMHTMLDocumentParentTypes = '[DOMDocument, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLDocument where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_document_get_type
+    
+
+class GObject o => DOMHTMLDocumentK o
+instance (GObject o, IsDescendantOf DOMHTMLDocument o) => DOMHTMLDocumentK o
+
+toDOMHTMLDocument :: DOMHTMLDocumentK o => o -> IO DOMHTMLDocument
+toDOMHTMLDocument = unsafeCastTo DOMHTMLDocument
+
+noDOMHTMLDocument :: Maybe DOMHTMLDocument
+noDOMHTMLDocument = Nothing
+
+-- VVV Prop "alink-color"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLDocumentAlinkColor :: (MonadIO m, DOMHTMLDocumentK o) => o -> m T.Text
+getDOMHTMLDocumentAlinkColor obj = liftIO $ getObjectPropertyString obj "alink-color"
+
+setDOMHTMLDocumentAlinkColor :: (MonadIO m, DOMHTMLDocumentK o) => o -> T.Text -> m ()
+setDOMHTMLDocumentAlinkColor obj val = liftIO $ setObjectPropertyString obj "alink-color" val
+
+constructDOMHTMLDocumentAlinkColor :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLDocumentAlinkColor val = constructObjectPropertyString "alink-color" val
+
+data DOMHTMLDocumentAlinkColorPropertyInfo
+instance AttrInfo DOMHTMLDocumentAlinkColorPropertyInfo where
+    type AttrAllowedOps DOMHTMLDocumentAlinkColorPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDocumentAlinkColorPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLDocumentAlinkColorPropertyInfo = DOMHTMLDocumentK
+    type AttrGetType DOMHTMLDocumentAlinkColorPropertyInfo = T.Text
+    type AttrLabel DOMHTMLDocumentAlinkColorPropertyInfo = "DOMHTMLDocument::alink-color"
+    attrGet _ = getDOMHTMLDocumentAlinkColor
+    attrSet _ = setDOMHTMLDocumentAlinkColor
+    attrConstruct _ = constructDOMHTMLDocumentAlinkColor
+
+-- VVV Prop "bg-color"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLDocumentBgColor :: (MonadIO m, DOMHTMLDocumentK o) => o -> m T.Text
+getDOMHTMLDocumentBgColor obj = liftIO $ getObjectPropertyString obj "bg-color"
+
+setDOMHTMLDocumentBgColor :: (MonadIO m, DOMHTMLDocumentK o) => o -> T.Text -> m ()
+setDOMHTMLDocumentBgColor obj val = liftIO $ setObjectPropertyString obj "bg-color" val
+
+constructDOMHTMLDocumentBgColor :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLDocumentBgColor val = constructObjectPropertyString "bg-color" val
+
+data DOMHTMLDocumentBgColorPropertyInfo
+instance AttrInfo DOMHTMLDocumentBgColorPropertyInfo where
+    type AttrAllowedOps DOMHTMLDocumentBgColorPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDocumentBgColorPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLDocumentBgColorPropertyInfo = DOMHTMLDocumentK
+    type AttrGetType DOMHTMLDocumentBgColorPropertyInfo = T.Text
+    type AttrLabel DOMHTMLDocumentBgColorPropertyInfo = "DOMHTMLDocument::bg-color"
+    attrGet _ = getDOMHTMLDocumentBgColor
+    attrSet _ = setDOMHTMLDocumentBgColor
+    attrConstruct _ = constructDOMHTMLDocumentBgColor
+
+-- VVV Prop "compat-mode"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLDocumentCompatMode :: (MonadIO m, DOMHTMLDocumentK o) => o -> m T.Text
+getDOMHTMLDocumentCompatMode obj = liftIO $ getObjectPropertyString obj "compat-mode"
+
+data DOMHTMLDocumentCompatModePropertyInfo
+instance AttrInfo DOMHTMLDocumentCompatModePropertyInfo where
+    type AttrAllowedOps DOMHTMLDocumentCompatModePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDocumentCompatModePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLDocumentCompatModePropertyInfo = DOMHTMLDocumentK
+    type AttrGetType DOMHTMLDocumentCompatModePropertyInfo = T.Text
+    type AttrLabel DOMHTMLDocumentCompatModePropertyInfo = "DOMHTMLDocument::compat-mode"
+    attrGet _ = getDOMHTMLDocumentCompatMode
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "design-mode"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLDocumentDesignMode :: (MonadIO m, DOMHTMLDocumentK o) => o -> m T.Text
+getDOMHTMLDocumentDesignMode obj = liftIO $ getObjectPropertyString obj "design-mode"
+
+setDOMHTMLDocumentDesignMode :: (MonadIO m, DOMHTMLDocumentK o) => o -> T.Text -> m ()
+setDOMHTMLDocumentDesignMode obj val = liftIO $ setObjectPropertyString obj "design-mode" val
+
+constructDOMHTMLDocumentDesignMode :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLDocumentDesignMode val = constructObjectPropertyString "design-mode" val
+
+data DOMHTMLDocumentDesignModePropertyInfo
+instance AttrInfo DOMHTMLDocumentDesignModePropertyInfo where
+    type AttrAllowedOps DOMHTMLDocumentDesignModePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDocumentDesignModePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLDocumentDesignModePropertyInfo = DOMHTMLDocumentK
+    type AttrGetType DOMHTMLDocumentDesignModePropertyInfo = T.Text
+    type AttrLabel DOMHTMLDocumentDesignModePropertyInfo = "DOMHTMLDocument::design-mode"
+    attrGet _ = getDOMHTMLDocumentDesignMode
+    attrSet _ = setDOMHTMLDocumentDesignMode
+    attrConstruct _ = constructDOMHTMLDocumentDesignMode
+
+-- VVV Prop "dir"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLDocumentDir :: (MonadIO m, DOMHTMLDocumentK o) => o -> m T.Text
+getDOMHTMLDocumentDir obj = liftIO $ getObjectPropertyString obj "dir"
+
+setDOMHTMLDocumentDir :: (MonadIO m, DOMHTMLDocumentK o) => o -> T.Text -> m ()
+setDOMHTMLDocumentDir obj val = liftIO $ setObjectPropertyString obj "dir" val
+
+constructDOMHTMLDocumentDir :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLDocumentDir val = constructObjectPropertyString "dir" val
+
+data DOMHTMLDocumentDirPropertyInfo
+instance AttrInfo DOMHTMLDocumentDirPropertyInfo where
+    type AttrAllowedOps DOMHTMLDocumentDirPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDocumentDirPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLDocumentDirPropertyInfo = DOMHTMLDocumentK
+    type AttrGetType DOMHTMLDocumentDirPropertyInfo = T.Text
+    type AttrLabel DOMHTMLDocumentDirPropertyInfo = "DOMHTMLDocument::dir"
+    attrGet _ = getDOMHTMLDocumentDir
+    attrSet _ = setDOMHTMLDocumentDir
+    attrConstruct _ = constructDOMHTMLDocumentDir
+
+-- VVV Prop "embeds"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLDocumentEmbeds :: (MonadIO m, DOMHTMLDocumentK o) => o -> m DOMHTMLCollection
+getDOMHTMLDocumentEmbeds obj = liftIO $ getObjectPropertyObject obj "embeds" DOMHTMLCollection
+
+data DOMHTMLDocumentEmbedsPropertyInfo
+instance AttrInfo DOMHTMLDocumentEmbedsPropertyInfo where
+    type AttrAllowedOps DOMHTMLDocumentEmbedsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDocumentEmbedsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLDocumentEmbedsPropertyInfo = DOMHTMLDocumentK
+    type AttrGetType DOMHTMLDocumentEmbedsPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMHTMLDocumentEmbedsPropertyInfo = "DOMHTMLDocument::embeds"
+    attrGet _ = getDOMHTMLDocumentEmbeds
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "fg-color"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLDocumentFgColor :: (MonadIO m, DOMHTMLDocumentK o) => o -> m T.Text
+getDOMHTMLDocumentFgColor obj = liftIO $ getObjectPropertyString obj "fg-color"
+
+setDOMHTMLDocumentFgColor :: (MonadIO m, DOMHTMLDocumentK o) => o -> T.Text -> m ()
+setDOMHTMLDocumentFgColor obj val = liftIO $ setObjectPropertyString obj "fg-color" val
+
+constructDOMHTMLDocumentFgColor :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLDocumentFgColor val = constructObjectPropertyString "fg-color" val
+
+data DOMHTMLDocumentFgColorPropertyInfo
+instance AttrInfo DOMHTMLDocumentFgColorPropertyInfo where
+    type AttrAllowedOps DOMHTMLDocumentFgColorPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDocumentFgColorPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLDocumentFgColorPropertyInfo = DOMHTMLDocumentK
+    type AttrGetType DOMHTMLDocumentFgColorPropertyInfo = T.Text
+    type AttrLabel DOMHTMLDocumentFgColorPropertyInfo = "DOMHTMLDocument::fg-color"
+    attrGet _ = getDOMHTMLDocumentFgColor
+    attrSet _ = setDOMHTMLDocumentFgColor
+    attrConstruct _ = constructDOMHTMLDocumentFgColor
+
+-- VVV Prop "height"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLDocumentHeight :: (MonadIO m, DOMHTMLDocumentK o) => o -> m Int64
+getDOMHTMLDocumentHeight obj = liftIO $ getObjectPropertyInt64 obj "height"
+
+data DOMHTMLDocumentHeightPropertyInfo
+instance AttrInfo DOMHTMLDocumentHeightPropertyInfo where
+    type AttrAllowedOps DOMHTMLDocumentHeightPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDocumentHeightPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLDocumentHeightPropertyInfo = DOMHTMLDocumentK
+    type AttrGetType DOMHTMLDocumentHeightPropertyInfo = Int64
+    type AttrLabel DOMHTMLDocumentHeightPropertyInfo = "DOMHTMLDocument::height"
+    attrGet _ = getDOMHTMLDocumentHeight
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "link-color"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLDocumentLinkColor :: (MonadIO m, DOMHTMLDocumentK o) => o -> m T.Text
+getDOMHTMLDocumentLinkColor obj = liftIO $ getObjectPropertyString obj "link-color"
+
+setDOMHTMLDocumentLinkColor :: (MonadIO m, DOMHTMLDocumentK o) => o -> T.Text -> m ()
+setDOMHTMLDocumentLinkColor obj val = liftIO $ setObjectPropertyString obj "link-color" val
+
+constructDOMHTMLDocumentLinkColor :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLDocumentLinkColor val = constructObjectPropertyString "link-color" val
+
+data DOMHTMLDocumentLinkColorPropertyInfo
+instance AttrInfo DOMHTMLDocumentLinkColorPropertyInfo where
+    type AttrAllowedOps DOMHTMLDocumentLinkColorPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDocumentLinkColorPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLDocumentLinkColorPropertyInfo = DOMHTMLDocumentK
+    type AttrGetType DOMHTMLDocumentLinkColorPropertyInfo = T.Text
+    type AttrLabel DOMHTMLDocumentLinkColorPropertyInfo = "DOMHTMLDocument::link-color"
+    attrGet _ = getDOMHTMLDocumentLinkColor
+    attrSet _ = setDOMHTMLDocumentLinkColor
+    attrConstruct _ = constructDOMHTMLDocumentLinkColor
+
+-- VVV Prop "plugins"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLDocumentPlugins :: (MonadIO m, DOMHTMLDocumentK o) => o -> m DOMHTMLCollection
+getDOMHTMLDocumentPlugins obj = liftIO $ getObjectPropertyObject obj "plugins" DOMHTMLCollection
+
+data DOMHTMLDocumentPluginsPropertyInfo
+instance AttrInfo DOMHTMLDocumentPluginsPropertyInfo where
+    type AttrAllowedOps DOMHTMLDocumentPluginsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDocumentPluginsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLDocumentPluginsPropertyInfo = DOMHTMLDocumentK
+    type AttrGetType DOMHTMLDocumentPluginsPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMHTMLDocumentPluginsPropertyInfo = "DOMHTMLDocument::plugins"
+    attrGet _ = getDOMHTMLDocumentPlugins
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "scripts"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLDocumentScripts :: (MonadIO m, DOMHTMLDocumentK o) => o -> m DOMHTMLCollection
+getDOMHTMLDocumentScripts obj = liftIO $ getObjectPropertyObject obj "scripts" DOMHTMLCollection
+
+data DOMHTMLDocumentScriptsPropertyInfo
+instance AttrInfo DOMHTMLDocumentScriptsPropertyInfo where
+    type AttrAllowedOps DOMHTMLDocumentScriptsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDocumentScriptsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLDocumentScriptsPropertyInfo = DOMHTMLDocumentK
+    type AttrGetType DOMHTMLDocumentScriptsPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMHTMLDocumentScriptsPropertyInfo = "DOMHTMLDocument::scripts"
+    attrGet _ = getDOMHTMLDocumentScripts
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "vlink-color"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLDocumentVlinkColor :: (MonadIO m, DOMHTMLDocumentK o) => o -> m T.Text
+getDOMHTMLDocumentVlinkColor obj = liftIO $ getObjectPropertyString obj "vlink-color"
+
+setDOMHTMLDocumentVlinkColor :: (MonadIO m, DOMHTMLDocumentK o) => o -> T.Text -> m ()
+setDOMHTMLDocumentVlinkColor obj val = liftIO $ setObjectPropertyString obj "vlink-color" val
+
+constructDOMHTMLDocumentVlinkColor :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLDocumentVlinkColor val = constructObjectPropertyString "vlink-color" val
+
+data DOMHTMLDocumentVlinkColorPropertyInfo
+instance AttrInfo DOMHTMLDocumentVlinkColorPropertyInfo where
+    type AttrAllowedOps DOMHTMLDocumentVlinkColorPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDocumentVlinkColorPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLDocumentVlinkColorPropertyInfo = DOMHTMLDocumentK
+    type AttrGetType DOMHTMLDocumentVlinkColorPropertyInfo = T.Text
+    type AttrLabel DOMHTMLDocumentVlinkColorPropertyInfo = "DOMHTMLDocument::vlink-color"
+    attrGet _ = getDOMHTMLDocumentVlinkColor
+    attrSet _ = setDOMHTMLDocumentVlinkColor
+    attrConstruct _ = constructDOMHTMLDocumentVlinkColor
+
+-- VVV Prop "width"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLDocumentWidth :: (MonadIO m, DOMHTMLDocumentK o) => o -> m Int64
+getDOMHTMLDocumentWidth obj = liftIO $ getObjectPropertyInt64 obj "width"
+
+data DOMHTMLDocumentWidthPropertyInfo
+instance AttrInfo DOMHTMLDocumentWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLDocumentWidthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLDocumentWidthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLDocumentWidthPropertyInfo = DOMHTMLDocumentK
+    type AttrGetType DOMHTMLDocumentWidthPropertyInfo = Int64
+    type AttrLabel DOMHTMLDocumentWidthPropertyInfo = "DOMHTMLDocument::width"
+    attrGet _ = getDOMHTMLDocumentWidth
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMHTMLDocument = DOMHTMLDocumentAttributeList
+type DOMHTMLDocumentAttributeList = ('[ '("active-element", DOMDocumentActiveElementPropertyInfo), '("alink-color", DOMHTMLDocumentAlinkColorPropertyInfo), '("anchors", DOMDocumentAnchorsPropertyInfo), '("applets", DOMDocumentAppletsPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("bg-color", DOMHTMLDocumentBgColorPropertyInfo), '("body", DOMDocumentBodyPropertyInfo), '("character-set", DOMDocumentCharacterSetPropertyInfo), '("charset", DOMDocumentCharsetPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("compat-mode", DOMHTMLDocumentCompatModePropertyInfo), '("content-type", DOMDocumentContentTypePropertyInfo), '("cookie", DOMDocumentCookiePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("current-script", DOMDocumentCurrentScriptPropertyInfo), '("default-charset", DOMDocumentDefaultCharsetPropertyInfo), '("default-view", DOMDocumentDefaultViewPropertyInfo), '("design-mode", DOMHTMLDocumentDesignModePropertyInfo), '("dir", DOMHTMLDocumentDirPropertyInfo), '("doctype", DOMDocumentDoctypePropertyInfo), '("document-element", DOMDocumentDocumentElementPropertyInfo), '("document-uri", DOMDocumentDocumentUriPropertyInfo), '("domain", DOMDocumentDomainPropertyInfo), '("embeds", DOMHTMLDocumentEmbedsPropertyInfo), '("fg-color", DOMHTMLDocumentFgColorPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("forms", DOMDocumentFormsPropertyInfo), '("head", DOMDocumentHeadPropertyInfo), '("height", DOMHTMLDocumentHeightPropertyInfo), '("hidden", DOMDocumentHiddenPropertyInfo), '("images", DOMDocumentImagesPropertyInfo), '("implementation", DOMDocumentImplementationPropertyInfo), '("input-encoding", DOMDocumentInputEncodingPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-modified", DOMDocumentLastModifiedPropertyInfo), '("link-color", DOMHTMLDocumentLinkColorPropertyInfo), '("links", DOMDocumentLinksPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("origin", DOMDocumentOriginPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("plugins", DOMHTMLDocumentPluginsPropertyInfo), '("pointer-lock-element", DOMDocumentPointerLockElementPropertyInfo), '("preferred-stylesheet-set", DOMDocumentPreferredStylesheetSetPropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("ready-state", DOMDocumentReadyStatePropertyInfo), '("referrer", DOMDocumentReferrerPropertyInfo), '("scripts", DOMHTMLDocumentScriptsPropertyInfo), '("selected-stylesheet-set", DOMDocumentSelectedStylesheetSetPropertyInfo), '("style-sheets", DOMDocumentStyleSheetsPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMDocumentTitlePropertyInfo), '("url", DOMDocumentUrlPropertyInfo), '("visibility-state", DOMDocumentVisibilityStatePropertyInfo), '("vlink-color", DOMHTMLDocumentVlinkColorPropertyInfo), '("webkit-current-full-screen-element", DOMDocumentWebkitCurrentFullScreenElementPropertyInfo), '("webkit-full-screen-keyboard-input-allowed", DOMDocumentWebkitFullScreenKeyboardInputAllowedPropertyInfo), '("webkit-fullscreen-element", DOMDocumentWebkitFullscreenElementPropertyInfo), '("webkit-fullscreen-enabled", DOMDocumentWebkitFullscreenEnabledPropertyInfo), '("webkit-is-full-screen", DOMDocumentWebkitIsFullScreenPropertyInfo), '("width", DOMHTMLDocumentWidthPropertyInfo), '("xml-encoding", DOMDocumentXmlEncodingPropertyInfo), '("xml-standalone", DOMDocumentXmlStandalonePropertyInfo), '("xml-version", DOMDocumentXmlVersionPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLDocument = DOMHTMLDocumentSignalList
+type DOMHTMLDocumentSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLDocument::capture_events
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_capture_events" webkit_dom_html_document_capture_events :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO ()
+
+
+dOMHTMLDocumentCaptureEvents ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMHTMLDocumentCaptureEvents _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_document_capture_events _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLDocument::clear
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_clear" webkit_dom_html_document_clear :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO ()
+
+
+dOMHTMLDocumentClear ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMHTMLDocumentClear _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_document_clear _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLDocument::close
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_close" webkit_dom_html_document_close :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO ()
+
+
+dOMHTMLDocumentClose ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMHTMLDocumentClose _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_document_close _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLDocument::get_alink_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_get_alink_color" webkit_dom_html_document_get_alink_color :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO CString
+
+
+dOMHTMLDocumentGetAlinkColor ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLDocumentGetAlinkColor _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_document_get_alink_color _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_document_get_alink_color" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLDocument::get_bg_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_get_bg_color" webkit_dom_html_document_get_bg_color :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO CString
+
+
+dOMHTMLDocumentGetBgColor ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLDocumentGetBgColor _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_document_get_bg_color _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_document_get_bg_color" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLDocument::get_compat_mode
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_get_compat_mode" webkit_dom_html_document_get_compat_mode :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO CString
+
+
+dOMHTMLDocumentGetCompatMode ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLDocumentGetCompatMode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_document_get_compat_mode _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_document_get_compat_mode" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLDocument::get_design_mode
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_get_design_mode" webkit_dom_html_document_get_design_mode :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO CString
+
+
+dOMHTMLDocumentGetDesignMode ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLDocumentGetDesignMode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_document_get_design_mode _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_document_get_design_mode" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLDocument::get_dir
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_get_dir" webkit_dom_html_document_get_dir :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO CString
+
+
+dOMHTMLDocumentGetDir ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLDocumentGetDir _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_document_get_dir _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_document_get_dir" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLDocument::get_embeds
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_get_embeds" webkit_dom_html_document_get_embeds :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO (Ptr DOMHTMLCollection)
+
+
+dOMHTMLDocumentGetEmbeds ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLCollection
+dOMHTMLDocumentGetEmbeds _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_document_get_embeds _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_document_get_embeds" result
+    result' <- (wrapObject DOMHTMLCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLDocument::get_fg_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_get_fg_color" webkit_dom_html_document_get_fg_color :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO CString
+
+
+dOMHTMLDocumentGetFgColor ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLDocumentGetFgColor _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_document_get_fg_color _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_document_get_fg_color" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLDocument::get_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_get_height" webkit_dom_html_document_get_height :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO Int64
+
+
+dOMHTMLDocumentGetHeight ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLDocumentGetHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_document_get_height _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLDocument::get_link_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_get_link_color" webkit_dom_html_document_get_link_color :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO CString
+
+
+dOMHTMLDocumentGetLinkColor ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLDocumentGetLinkColor _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_document_get_link_color _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_document_get_link_color" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLDocument::get_plugins
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_get_plugins" webkit_dom_html_document_get_plugins :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO (Ptr DOMHTMLCollection)
+
+
+dOMHTMLDocumentGetPlugins ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLCollection
+dOMHTMLDocumentGetPlugins _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_document_get_plugins _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_document_get_plugins" result
+    result' <- (wrapObject DOMHTMLCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLDocument::get_scripts
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_get_scripts" webkit_dom_html_document_get_scripts :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO (Ptr DOMHTMLCollection)
+
+
+dOMHTMLDocumentGetScripts ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLCollection
+dOMHTMLDocumentGetScripts _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_document_get_scripts _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_document_get_scripts" result
+    result' <- (wrapObject DOMHTMLCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLDocument::get_vlink_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_get_vlink_color" webkit_dom_html_document_get_vlink_color :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO CString
+
+
+dOMHTMLDocumentGetVlinkColor ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLDocumentGetVlinkColor _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_document_get_vlink_color _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_document_get_vlink_color" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLDocument::get_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_get_width" webkit_dom_html_document_get_width :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO Int64
+
+
+dOMHTMLDocumentGetWidth ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLDocumentGetWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_document_get_width _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLDocument::release_events
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_release_events" webkit_dom_html_document_release_events :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    IO ()
+
+
+dOMHTMLDocumentReleaseEvents ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMHTMLDocumentReleaseEvents _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_document_release_events _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLDocument::set_alink_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_set_alink_color" webkit_dom_html_document_set_alink_color :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLDocumentSetAlinkColor ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLDocumentSetAlinkColor _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_document_set_alink_color _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLDocument::set_bg_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_set_bg_color" webkit_dom_html_document_set_bg_color :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLDocumentSetBgColor ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLDocumentSetBgColor _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_document_set_bg_color _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLDocument::set_design_mode
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_set_design_mode" webkit_dom_html_document_set_design_mode :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLDocumentSetDesignMode ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLDocumentSetDesignMode _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_document_set_design_mode _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLDocument::set_dir
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_set_dir" webkit_dom_html_document_set_dir :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLDocumentSetDir ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLDocumentSetDir _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_document_set_dir _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLDocument::set_fg_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_set_fg_color" webkit_dom_html_document_set_fg_color :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLDocumentSetFgColor ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLDocumentSetFgColor _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_document_set_fg_color _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLDocument::set_link_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_set_link_color" webkit_dom_html_document_set_link_color :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLDocumentSetLinkColor ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLDocumentSetLinkColor _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_document_set_link_color _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLDocument::set_vlink_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLDocument", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_document_set_vlink_color" webkit_dom_html_document_set_vlink_color :: 
+    Ptr DOMHTMLDocument ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLDocument"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLDocumentSetVlinkColor ::
+    (MonadIO m, DOMHTMLDocumentK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLDocumentSetVlinkColor _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_document_set_vlink_color _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLDocument.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLDocument.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLDocument.hs-boot
@@ -0,0 +1,26 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLDocument where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLDocument = DOMHTMLDocument (ForeignPtr DOMHTMLDocument)
+instance GObject DOMHTMLDocument where
+class GObject o => DOMHTMLDocumentK o
+instance (GObject o, IsDescendantOf DOMHTMLDocument o) => DOMHTMLDocumentK o
+data DOMHTMLDocumentAlinkColorPropertyInfo
+data DOMHTMLDocumentBgColorPropertyInfo
+data DOMHTMLDocumentCompatModePropertyInfo
+data DOMHTMLDocumentDesignModePropertyInfo
+data DOMHTMLDocumentDirPropertyInfo
+data DOMHTMLDocumentEmbedsPropertyInfo
+data DOMHTMLDocumentFgColorPropertyInfo
+data DOMHTMLDocumentHeightPropertyInfo
+data DOMHTMLDocumentLinkColorPropertyInfo
+data DOMHTMLDocumentPluginsPropertyInfo
+data DOMHTMLDocumentScriptsPropertyInfo
+data DOMHTMLDocumentVlinkColorPropertyInfo
+data DOMHTMLDocumentWidthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLElement.hs
@@ -0,0 +1,1250 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLElement
+    ( 
+
+-- * Exported types
+    DOMHTMLElement(..)                      ,
+    DOMHTMLElementK                         ,
+    toDOMHTMLElement                        ,
+    noDOMHTMLElement                        ,
+
+
+ -- * Methods
+-- ** dOMHTMLElementClick
+    dOMHTMLElementClick                     ,
+
+
+-- ** dOMHTMLElementGetAccessKey
+    dOMHTMLElementGetAccessKey              ,
+
+
+-- ** dOMHTMLElementGetChildren
+    dOMHTMLElementGetChildren               ,
+
+
+-- ** dOMHTMLElementGetContentEditable
+    dOMHTMLElementGetContentEditable        ,
+
+
+-- ** dOMHTMLElementGetDir
+    dOMHTMLElementGetDir                    ,
+
+
+-- ** dOMHTMLElementGetInnerHtml
+    dOMHTMLElementGetInnerHtml              ,
+
+
+-- ** dOMHTMLElementGetInnerText
+    dOMHTMLElementGetInnerText              ,
+
+
+-- ** dOMHTMLElementGetIsContentEditable
+    dOMHTMLElementGetIsContentEditable      ,
+
+
+-- ** dOMHTMLElementGetLang
+    dOMHTMLElementGetLang                   ,
+
+
+-- ** dOMHTMLElementGetOuterHtml
+    dOMHTMLElementGetOuterHtml              ,
+
+
+-- ** dOMHTMLElementGetOuterText
+    dOMHTMLElementGetOuterText              ,
+
+
+-- ** dOMHTMLElementGetTabIndex
+    dOMHTMLElementGetTabIndex               ,
+
+
+-- ** dOMHTMLElementGetTitle
+    dOMHTMLElementGetTitle                  ,
+
+
+-- ** dOMHTMLElementSetAccessKey
+    dOMHTMLElementSetAccessKey              ,
+
+
+-- ** dOMHTMLElementSetContentEditable
+    dOMHTMLElementSetContentEditable        ,
+
+
+-- ** dOMHTMLElementSetDir
+    dOMHTMLElementSetDir                    ,
+
+
+-- ** dOMHTMLElementSetInnerHtml
+    dOMHTMLElementSetInnerHtml              ,
+
+
+-- ** dOMHTMLElementSetInnerText
+    dOMHTMLElementSetInnerText              ,
+
+
+-- ** dOMHTMLElementSetLang
+    dOMHTMLElementSetLang                   ,
+
+
+-- ** dOMHTMLElementSetOuterHtml
+    dOMHTMLElementSetOuterHtml              ,
+
+
+-- ** dOMHTMLElementSetOuterText
+    dOMHTMLElementSetOuterText              ,
+
+
+-- ** dOMHTMLElementSetTabIndex
+    dOMHTMLElementSetTabIndex               ,
+
+
+-- ** dOMHTMLElementSetTitle
+    dOMHTMLElementSetTitle                  ,
+
+
+
+
+ -- * Properties
+-- ** AccessKey
+    DOMHTMLElementAccessKeyPropertyInfo     ,
+    constructDOMHTMLElementAccessKey        ,
+    getDOMHTMLElementAccessKey              ,
+    setDOMHTMLElementAccessKey              ,
+
+
+-- ** Children
+    DOMHTMLElementChildrenPropertyInfo      ,
+    getDOMHTMLElementChildren               ,
+
+
+-- ** ContentEditable
+    DOMHTMLElementContentEditablePropertyInfo,
+    constructDOMHTMLElementContentEditable  ,
+    getDOMHTMLElementContentEditable        ,
+    setDOMHTMLElementContentEditable        ,
+
+
+-- ** Dir
+    DOMHTMLElementDirPropertyInfo           ,
+    constructDOMHTMLElementDir              ,
+    getDOMHTMLElementDir                    ,
+    setDOMHTMLElementDir                    ,
+
+
+-- ** Draggable
+    DOMHTMLElementDraggablePropertyInfo     ,
+    constructDOMHTMLElementDraggable        ,
+    getDOMHTMLElementDraggable              ,
+    setDOMHTMLElementDraggable              ,
+
+
+-- ** Hidden
+    DOMHTMLElementHiddenPropertyInfo        ,
+    constructDOMHTMLElementHidden           ,
+    getDOMHTMLElementHidden                 ,
+    setDOMHTMLElementHidden                 ,
+
+
+-- ** InnerText
+    DOMHTMLElementInnerTextPropertyInfo     ,
+    constructDOMHTMLElementInnerText        ,
+    getDOMHTMLElementInnerText              ,
+    setDOMHTMLElementInnerText              ,
+
+
+-- ** IsContentEditable
+    DOMHTMLElementIsContentEditablePropertyInfo,
+    getDOMHTMLElementIsContentEditable      ,
+
+
+-- ** Lang
+    DOMHTMLElementLangPropertyInfo          ,
+    constructDOMHTMLElementLang             ,
+    getDOMHTMLElementLang                   ,
+    setDOMHTMLElementLang                   ,
+
+
+-- ** OuterText
+    DOMHTMLElementOuterTextPropertyInfo     ,
+    constructDOMHTMLElementOuterText        ,
+    getDOMHTMLElementOuterText              ,
+    setDOMHTMLElementOuterText              ,
+
+
+-- ** Spellcheck
+    DOMHTMLElementSpellcheckPropertyInfo    ,
+    constructDOMHTMLElementSpellcheck       ,
+    getDOMHTMLElementSpellcheck             ,
+    setDOMHTMLElementSpellcheck             ,
+
+
+-- ** TabIndex
+    DOMHTMLElementTabIndexPropertyInfo      ,
+    constructDOMHTMLElementTabIndex         ,
+    getDOMHTMLElementTabIndex               ,
+    setDOMHTMLElementTabIndex               ,
+
+
+-- ** Title
+    DOMHTMLElementTitlePropertyInfo         ,
+    constructDOMHTMLElementTitle            ,
+    getDOMHTMLElementTitle                  ,
+    setDOMHTMLElementTitle                  ,
+
+
+-- ** Translate
+    DOMHTMLElementTranslatePropertyInfo     ,
+    constructDOMHTMLElementTranslate        ,
+    getDOMHTMLElementTranslate              ,
+    setDOMHTMLElementTranslate              ,
+
+
+-- ** Webkitdropzone
+    DOMHTMLElementWebkitdropzonePropertyInfo,
+    constructDOMHTMLElementWebkitdropzone   ,
+    getDOMHTMLElementWebkitdropzone         ,
+    setDOMHTMLElementWebkitdropzone         ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLElement = DOMHTMLElement (ForeignPtr DOMHTMLElement)
+foreign import ccall "webkit_dom_html_element_get_type"
+    c_webkit_dom_html_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLElement = DOMHTMLElementParentTypes
+type DOMHTMLElementParentTypes = '[DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_element_get_type
+    
+
+class GObject o => DOMHTMLElementK o
+instance (GObject o, IsDescendantOf DOMHTMLElement o) => DOMHTMLElementK o
+
+toDOMHTMLElement :: DOMHTMLElementK o => o -> IO DOMHTMLElement
+toDOMHTMLElement = unsafeCastTo DOMHTMLElement
+
+noDOMHTMLElement :: Maybe DOMHTMLElement
+noDOMHTMLElement = Nothing
+
+-- VVV Prop "access-key"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLElementAccessKey :: (MonadIO m, DOMHTMLElementK o) => o -> m T.Text
+getDOMHTMLElementAccessKey obj = liftIO $ getObjectPropertyString obj "access-key"
+
+setDOMHTMLElementAccessKey :: (MonadIO m, DOMHTMLElementK o) => o -> T.Text -> m ()
+setDOMHTMLElementAccessKey obj val = liftIO $ setObjectPropertyString obj "access-key" val
+
+constructDOMHTMLElementAccessKey :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLElementAccessKey val = constructObjectPropertyString "access-key" val
+
+data DOMHTMLElementAccessKeyPropertyInfo
+instance AttrInfo DOMHTMLElementAccessKeyPropertyInfo where
+    type AttrAllowedOps DOMHTMLElementAccessKeyPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLElementAccessKeyPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLElementAccessKeyPropertyInfo = DOMHTMLElementK
+    type AttrGetType DOMHTMLElementAccessKeyPropertyInfo = T.Text
+    type AttrLabel DOMHTMLElementAccessKeyPropertyInfo = "DOMHTMLElement::access-key"
+    attrGet _ = getDOMHTMLElementAccessKey
+    attrSet _ = setDOMHTMLElementAccessKey
+    attrConstruct _ = constructDOMHTMLElementAccessKey
+
+-- VVV Prop "children"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLElementChildren :: (MonadIO m, DOMHTMLElementK o) => o -> m DOMHTMLCollection
+getDOMHTMLElementChildren obj = liftIO $ getObjectPropertyObject obj "children" DOMHTMLCollection
+
+data DOMHTMLElementChildrenPropertyInfo
+instance AttrInfo DOMHTMLElementChildrenPropertyInfo where
+    type AttrAllowedOps DOMHTMLElementChildrenPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLElementChildrenPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLElementChildrenPropertyInfo = DOMHTMLElementK
+    type AttrGetType DOMHTMLElementChildrenPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMHTMLElementChildrenPropertyInfo = "DOMHTMLElement::children"
+    attrGet _ = getDOMHTMLElementChildren
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "content-editable"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLElementContentEditable :: (MonadIO m, DOMHTMLElementK o) => o -> m T.Text
+getDOMHTMLElementContentEditable obj = liftIO $ getObjectPropertyString obj "content-editable"
+
+setDOMHTMLElementContentEditable :: (MonadIO m, DOMHTMLElementK o) => o -> T.Text -> m ()
+setDOMHTMLElementContentEditable obj val = liftIO $ setObjectPropertyString obj "content-editable" val
+
+constructDOMHTMLElementContentEditable :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLElementContentEditable val = constructObjectPropertyString "content-editable" val
+
+data DOMHTMLElementContentEditablePropertyInfo
+instance AttrInfo DOMHTMLElementContentEditablePropertyInfo where
+    type AttrAllowedOps DOMHTMLElementContentEditablePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLElementContentEditablePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLElementContentEditablePropertyInfo = DOMHTMLElementK
+    type AttrGetType DOMHTMLElementContentEditablePropertyInfo = T.Text
+    type AttrLabel DOMHTMLElementContentEditablePropertyInfo = "DOMHTMLElement::content-editable"
+    attrGet _ = getDOMHTMLElementContentEditable
+    attrSet _ = setDOMHTMLElementContentEditable
+    attrConstruct _ = constructDOMHTMLElementContentEditable
+
+-- VVV Prop "dir"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLElementDir :: (MonadIO m, DOMHTMLElementK o) => o -> m T.Text
+getDOMHTMLElementDir obj = liftIO $ getObjectPropertyString obj "dir"
+
+setDOMHTMLElementDir :: (MonadIO m, DOMHTMLElementK o) => o -> T.Text -> m ()
+setDOMHTMLElementDir obj val = liftIO $ setObjectPropertyString obj "dir" val
+
+constructDOMHTMLElementDir :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLElementDir val = constructObjectPropertyString "dir" val
+
+data DOMHTMLElementDirPropertyInfo
+instance AttrInfo DOMHTMLElementDirPropertyInfo where
+    type AttrAllowedOps DOMHTMLElementDirPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLElementDirPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLElementDirPropertyInfo = DOMHTMLElementK
+    type AttrGetType DOMHTMLElementDirPropertyInfo = T.Text
+    type AttrLabel DOMHTMLElementDirPropertyInfo = "DOMHTMLElement::dir"
+    attrGet _ = getDOMHTMLElementDir
+    attrSet _ = setDOMHTMLElementDir
+    attrConstruct _ = constructDOMHTMLElementDir
+
+-- VVV Prop "draggable"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLElementDraggable :: (MonadIO m, DOMHTMLElementK o) => o -> m Bool
+getDOMHTMLElementDraggable obj = liftIO $ getObjectPropertyBool obj "draggable"
+
+setDOMHTMLElementDraggable :: (MonadIO m, DOMHTMLElementK o) => o -> Bool -> m ()
+setDOMHTMLElementDraggable obj val = liftIO $ setObjectPropertyBool obj "draggable" val
+
+constructDOMHTMLElementDraggable :: Bool -> IO ([Char], GValue)
+constructDOMHTMLElementDraggable val = constructObjectPropertyBool "draggable" val
+
+data DOMHTMLElementDraggablePropertyInfo
+instance AttrInfo DOMHTMLElementDraggablePropertyInfo where
+    type AttrAllowedOps DOMHTMLElementDraggablePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLElementDraggablePropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLElementDraggablePropertyInfo = DOMHTMLElementK
+    type AttrGetType DOMHTMLElementDraggablePropertyInfo = Bool
+    type AttrLabel DOMHTMLElementDraggablePropertyInfo = "DOMHTMLElement::draggable"
+    attrGet _ = getDOMHTMLElementDraggable
+    attrSet _ = setDOMHTMLElementDraggable
+    attrConstruct _ = constructDOMHTMLElementDraggable
+
+-- VVV Prop "hidden"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLElementHidden :: (MonadIO m, DOMHTMLElementK o) => o -> m Bool
+getDOMHTMLElementHidden obj = liftIO $ getObjectPropertyBool obj "hidden"
+
+setDOMHTMLElementHidden :: (MonadIO m, DOMHTMLElementK o) => o -> Bool -> m ()
+setDOMHTMLElementHidden obj val = liftIO $ setObjectPropertyBool obj "hidden" val
+
+constructDOMHTMLElementHidden :: Bool -> IO ([Char], GValue)
+constructDOMHTMLElementHidden val = constructObjectPropertyBool "hidden" val
+
+data DOMHTMLElementHiddenPropertyInfo
+instance AttrInfo DOMHTMLElementHiddenPropertyInfo where
+    type AttrAllowedOps DOMHTMLElementHiddenPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLElementHiddenPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLElementHiddenPropertyInfo = DOMHTMLElementK
+    type AttrGetType DOMHTMLElementHiddenPropertyInfo = Bool
+    type AttrLabel DOMHTMLElementHiddenPropertyInfo = "DOMHTMLElement::hidden"
+    attrGet _ = getDOMHTMLElementHidden
+    attrSet _ = setDOMHTMLElementHidden
+    attrConstruct _ = constructDOMHTMLElementHidden
+
+-- VVV Prop "inner-text"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLElementInnerText :: (MonadIO m, DOMHTMLElementK o) => o -> m T.Text
+getDOMHTMLElementInnerText obj = liftIO $ getObjectPropertyString obj "inner-text"
+
+setDOMHTMLElementInnerText :: (MonadIO m, DOMHTMLElementK o) => o -> T.Text -> m ()
+setDOMHTMLElementInnerText obj val = liftIO $ setObjectPropertyString obj "inner-text" val
+
+constructDOMHTMLElementInnerText :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLElementInnerText val = constructObjectPropertyString "inner-text" val
+
+data DOMHTMLElementInnerTextPropertyInfo
+instance AttrInfo DOMHTMLElementInnerTextPropertyInfo where
+    type AttrAllowedOps DOMHTMLElementInnerTextPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLElementInnerTextPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLElementInnerTextPropertyInfo = DOMHTMLElementK
+    type AttrGetType DOMHTMLElementInnerTextPropertyInfo = T.Text
+    type AttrLabel DOMHTMLElementInnerTextPropertyInfo = "DOMHTMLElement::inner-text"
+    attrGet _ = getDOMHTMLElementInnerText
+    attrSet _ = setDOMHTMLElementInnerText
+    attrConstruct _ = constructDOMHTMLElementInnerText
+
+-- VVV Prop "is-content-editable"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLElementIsContentEditable :: (MonadIO m, DOMHTMLElementK o) => o -> m Bool
+getDOMHTMLElementIsContentEditable obj = liftIO $ getObjectPropertyBool obj "is-content-editable"
+
+data DOMHTMLElementIsContentEditablePropertyInfo
+instance AttrInfo DOMHTMLElementIsContentEditablePropertyInfo where
+    type AttrAllowedOps DOMHTMLElementIsContentEditablePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLElementIsContentEditablePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLElementIsContentEditablePropertyInfo = DOMHTMLElementK
+    type AttrGetType DOMHTMLElementIsContentEditablePropertyInfo = Bool
+    type AttrLabel DOMHTMLElementIsContentEditablePropertyInfo = "DOMHTMLElement::is-content-editable"
+    attrGet _ = getDOMHTMLElementIsContentEditable
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "lang"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLElementLang :: (MonadIO m, DOMHTMLElementK o) => o -> m T.Text
+getDOMHTMLElementLang obj = liftIO $ getObjectPropertyString obj "lang"
+
+setDOMHTMLElementLang :: (MonadIO m, DOMHTMLElementK o) => o -> T.Text -> m ()
+setDOMHTMLElementLang obj val = liftIO $ setObjectPropertyString obj "lang" val
+
+constructDOMHTMLElementLang :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLElementLang val = constructObjectPropertyString "lang" val
+
+data DOMHTMLElementLangPropertyInfo
+instance AttrInfo DOMHTMLElementLangPropertyInfo where
+    type AttrAllowedOps DOMHTMLElementLangPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLElementLangPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLElementLangPropertyInfo = DOMHTMLElementK
+    type AttrGetType DOMHTMLElementLangPropertyInfo = T.Text
+    type AttrLabel DOMHTMLElementLangPropertyInfo = "DOMHTMLElement::lang"
+    attrGet _ = getDOMHTMLElementLang
+    attrSet _ = setDOMHTMLElementLang
+    attrConstruct _ = constructDOMHTMLElementLang
+
+-- VVV Prop "outer-text"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLElementOuterText :: (MonadIO m, DOMHTMLElementK o) => o -> m T.Text
+getDOMHTMLElementOuterText obj = liftIO $ getObjectPropertyString obj "outer-text"
+
+setDOMHTMLElementOuterText :: (MonadIO m, DOMHTMLElementK o) => o -> T.Text -> m ()
+setDOMHTMLElementOuterText obj val = liftIO $ setObjectPropertyString obj "outer-text" val
+
+constructDOMHTMLElementOuterText :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLElementOuterText val = constructObjectPropertyString "outer-text" val
+
+data DOMHTMLElementOuterTextPropertyInfo
+instance AttrInfo DOMHTMLElementOuterTextPropertyInfo where
+    type AttrAllowedOps DOMHTMLElementOuterTextPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLElementOuterTextPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLElementOuterTextPropertyInfo = DOMHTMLElementK
+    type AttrGetType DOMHTMLElementOuterTextPropertyInfo = T.Text
+    type AttrLabel DOMHTMLElementOuterTextPropertyInfo = "DOMHTMLElement::outer-text"
+    attrGet _ = getDOMHTMLElementOuterText
+    attrSet _ = setDOMHTMLElementOuterText
+    attrConstruct _ = constructDOMHTMLElementOuterText
+
+-- VVV Prop "spellcheck"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLElementSpellcheck :: (MonadIO m, DOMHTMLElementK o) => o -> m Bool
+getDOMHTMLElementSpellcheck obj = liftIO $ getObjectPropertyBool obj "spellcheck"
+
+setDOMHTMLElementSpellcheck :: (MonadIO m, DOMHTMLElementK o) => o -> Bool -> m ()
+setDOMHTMLElementSpellcheck obj val = liftIO $ setObjectPropertyBool obj "spellcheck" val
+
+constructDOMHTMLElementSpellcheck :: Bool -> IO ([Char], GValue)
+constructDOMHTMLElementSpellcheck val = constructObjectPropertyBool "spellcheck" val
+
+data DOMHTMLElementSpellcheckPropertyInfo
+instance AttrInfo DOMHTMLElementSpellcheckPropertyInfo where
+    type AttrAllowedOps DOMHTMLElementSpellcheckPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLElementSpellcheckPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLElementSpellcheckPropertyInfo = DOMHTMLElementK
+    type AttrGetType DOMHTMLElementSpellcheckPropertyInfo = Bool
+    type AttrLabel DOMHTMLElementSpellcheckPropertyInfo = "DOMHTMLElement::spellcheck"
+    attrGet _ = getDOMHTMLElementSpellcheck
+    attrSet _ = setDOMHTMLElementSpellcheck
+    attrConstruct _ = constructDOMHTMLElementSpellcheck
+
+-- VVV Prop "tab-index"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLElementTabIndex :: (MonadIO m, DOMHTMLElementK o) => o -> m Int64
+getDOMHTMLElementTabIndex obj = liftIO $ getObjectPropertyInt64 obj "tab-index"
+
+setDOMHTMLElementTabIndex :: (MonadIO m, DOMHTMLElementK o) => o -> Int64 -> m ()
+setDOMHTMLElementTabIndex obj val = liftIO $ setObjectPropertyInt64 obj "tab-index" val
+
+constructDOMHTMLElementTabIndex :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLElementTabIndex val = constructObjectPropertyInt64 "tab-index" val
+
+data DOMHTMLElementTabIndexPropertyInfo
+instance AttrInfo DOMHTMLElementTabIndexPropertyInfo where
+    type AttrAllowedOps DOMHTMLElementTabIndexPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLElementTabIndexPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLElementTabIndexPropertyInfo = DOMHTMLElementK
+    type AttrGetType DOMHTMLElementTabIndexPropertyInfo = Int64
+    type AttrLabel DOMHTMLElementTabIndexPropertyInfo = "DOMHTMLElement::tab-index"
+    attrGet _ = getDOMHTMLElementTabIndex
+    attrSet _ = setDOMHTMLElementTabIndex
+    attrConstruct _ = constructDOMHTMLElementTabIndex
+
+-- VVV Prop "title"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLElementTitle :: (MonadIO m, DOMHTMLElementK o) => o -> m T.Text
+getDOMHTMLElementTitle obj = liftIO $ getObjectPropertyString obj "title"
+
+setDOMHTMLElementTitle :: (MonadIO m, DOMHTMLElementK o) => o -> T.Text -> m ()
+setDOMHTMLElementTitle obj val = liftIO $ setObjectPropertyString obj "title" val
+
+constructDOMHTMLElementTitle :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLElementTitle val = constructObjectPropertyString "title" val
+
+data DOMHTMLElementTitlePropertyInfo
+instance AttrInfo DOMHTMLElementTitlePropertyInfo where
+    type AttrAllowedOps DOMHTMLElementTitlePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLElementTitlePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLElementTitlePropertyInfo = DOMHTMLElementK
+    type AttrGetType DOMHTMLElementTitlePropertyInfo = T.Text
+    type AttrLabel DOMHTMLElementTitlePropertyInfo = "DOMHTMLElement::title"
+    attrGet _ = getDOMHTMLElementTitle
+    attrSet _ = setDOMHTMLElementTitle
+    attrConstruct _ = constructDOMHTMLElementTitle
+
+-- VVV Prop "translate"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLElementTranslate :: (MonadIO m, DOMHTMLElementK o) => o -> m Bool
+getDOMHTMLElementTranslate obj = liftIO $ getObjectPropertyBool obj "translate"
+
+setDOMHTMLElementTranslate :: (MonadIO m, DOMHTMLElementK o) => o -> Bool -> m ()
+setDOMHTMLElementTranslate obj val = liftIO $ setObjectPropertyBool obj "translate" val
+
+constructDOMHTMLElementTranslate :: Bool -> IO ([Char], GValue)
+constructDOMHTMLElementTranslate val = constructObjectPropertyBool "translate" val
+
+data DOMHTMLElementTranslatePropertyInfo
+instance AttrInfo DOMHTMLElementTranslatePropertyInfo where
+    type AttrAllowedOps DOMHTMLElementTranslatePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLElementTranslatePropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLElementTranslatePropertyInfo = DOMHTMLElementK
+    type AttrGetType DOMHTMLElementTranslatePropertyInfo = Bool
+    type AttrLabel DOMHTMLElementTranslatePropertyInfo = "DOMHTMLElement::translate"
+    attrGet _ = getDOMHTMLElementTranslate
+    attrSet _ = setDOMHTMLElementTranslate
+    attrConstruct _ = constructDOMHTMLElementTranslate
+
+-- VVV Prop "webkitdropzone"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLElementWebkitdropzone :: (MonadIO m, DOMHTMLElementK o) => o -> m T.Text
+getDOMHTMLElementWebkitdropzone obj = liftIO $ getObjectPropertyString obj "webkitdropzone"
+
+setDOMHTMLElementWebkitdropzone :: (MonadIO m, DOMHTMLElementK o) => o -> T.Text -> m ()
+setDOMHTMLElementWebkitdropzone obj val = liftIO $ setObjectPropertyString obj "webkitdropzone" val
+
+constructDOMHTMLElementWebkitdropzone :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLElementWebkitdropzone val = constructObjectPropertyString "webkitdropzone" val
+
+data DOMHTMLElementWebkitdropzonePropertyInfo
+instance AttrInfo DOMHTMLElementWebkitdropzonePropertyInfo where
+    type AttrAllowedOps DOMHTMLElementWebkitdropzonePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLElementWebkitdropzonePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLElementWebkitdropzonePropertyInfo = DOMHTMLElementK
+    type AttrGetType DOMHTMLElementWebkitdropzonePropertyInfo = T.Text
+    type AttrLabel DOMHTMLElementWebkitdropzonePropertyInfo = "DOMHTMLElement::webkitdropzone"
+    attrGet _ = getDOMHTMLElementWebkitdropzone
+    attrSet _ = setDOMHTMLElementWebkitdropzone
+    attrConstruct _ = constructDOMHTMLElementWebkitdropzone
+
+type instance AttributeList DOMHTMLElement = DOMHTMLElementAttributeList
+type DOMHTMLElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLElement = DOMHTMLElementSignalList
+type DOMHTMLElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLElement::click
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_click" webkit_dom_html_element_click :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    IO ()
+
+
+dOMHTMLElementClick ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMHTMLElementClick _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_element_click _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLElement::get_access_key
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_get_access_key" webkit_dom_html_element_get_access_key :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    IO CString
+
+
+dOMHTMLElementGetAccessKey ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLElementGetAccessKey _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_element_get_access_key _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_element_get_access_key" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLElement::get_children
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_get_children" webkit_dom_html_element_get_children :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    IO (Ptr DOMHTMLCollection)
+
+
+dOMHTMLElementGetChildren ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLCollection
+dOMHTMLElementGetChildren _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_element_get_children _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_element_get_children" result
+    result' <- (wrapObject DOMHTMLCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLElement::get_content_editable
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_get_content_editable" webkit_dom_html_element_get_content_editable :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    IO CString
+
+
+dOMHTMLElementGetContentEditable ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLElementGetContentEditable _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_element_get_content_editable _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_element_get_content_editable" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLElement::get_dir
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_get_dir" webkit_dom_html_element_get_dir :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    IO CString
+
+
+dOMHTMLElementGetDir ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLElementGetDir _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_element_get_dir _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_element_get_dir" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLElement::get_inner_html
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_get_inner_html" webkit_dom_html_element_get_inner_html :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    IO CString
+
+{-# DEPRECATED dOMHTMLElementGetInnerHtml ["(Since version 2.8)","Use webkit_dom_element_get_inner_html() instead."]#-}
+dOMHTMLElementGetInnerHtml ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLElementGetInnerHtml _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_element_get_inner_html _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_element_get_inner_html" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLElement::get_inner_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_get_inner_text" webkit_dom_html_element_get_inner_text :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    IO CString
+
+
+dOMHTMLElementGetInnerText ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLElementGetInnerText _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_element_get_inner_text _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_element_get_inner_text" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLElement::get_is_content_editable
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_get_is_content_editable" webkit_dom_html_element_get_is_content_editable :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    IO CInt
+
+
+dOMHTMLElementGetIsContentEditable ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLElementGetIsContentEditable _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_element_get_is_content_editable _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLElement::get_lang
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_get_lang" webkit_dom_html_element_get_lang :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    IO CString
+
+
+dOMHTMLElementGetLang ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLElementGetLang _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_element_get_lang _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_element_get_lang" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLElement::get_outer_html
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_get_outer_html" webkit_dom_html_element_get_outer_html :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    IO CString
+
+{-# DEPRECATED dOMHTMLElementGetOuterHtml ["(Since version 2.8)","Use webkit_dom_element_get_outer_html() instead."]#-}
+dOMHTMLElementGetOuterHtml ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLElementGetOuterHtml _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_element_get_outer_html _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_element_get_outer_html" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLElement::get_outer_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_get_outer_text" webkit_dom_html_element_get_outer_text :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    IO CString
+
+
+dOMHTMLElementGetOuterText ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLElementGetOuterText _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_element_get_outer_text _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_element_get_outer_text" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLElement::get_tab_index
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_get_tab_index" webkit_dom_html_element_get_tab_index :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    IO Int64
+
+
+dOMHTMLElementGetTabIndex ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLElementGetTabIndex _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_element_get_tab_index _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLElement::get_title
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_get_title" webkit_dom_html_element_get_title :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    IO CString
+
+
+dOMHTMLElementGetTitle ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLElementGetTitle _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_element_get_title _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_element_get_title" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLElement::set_access_key
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_set_access_key" webkit_dom_html_element_set_access_key :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLElementSetAccessKey ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLElementSetAccessKey _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_element_set_access_key _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLElement::set_content_editable
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_set_content_editable" webkit_dom_html_element_set_content_editable :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMHTMLElementSetContentEditable ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLElementSetContentEditable _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_html_element_set_content_editable _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+-- method DOMHTMLElement::set_dir
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_set_dir" webkit_dom_html_element_set_dir :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLElementSetDir ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLElementSetDir _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_element_set_dir _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLElement::set_inner_html
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "contents", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "contents", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_set_inner_html" webkit_dom_html_element_set_inner_html :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    CString ->                              -- contents : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+{-# DEPRECATED dOMHTMLElementSetInnerHtml ["(Since version 2.8)","Use webkit_dom_element_set_inner_html() instead."]#-}
+dOMHTMLElementSetInnerHtml ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- contents
+    m ()
+dOMHTMLElementSetInnerHtml _obj contents = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    contents' <- textToCString contents
+    onException (do
+        propagateGError $ webkit_dom_html_element_set_inner_html _obj' contents'
+        touchManagedPtr _obj
+        freeMem contents'
+        return ()
+     ) (do
+        freeMem contents'
+     )
+
+-- method DOMHTMLElement::set_inner_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_set_inner_text" webkit_dom_html_element_set_inner_text :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMHTMLElementSetInnerText ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLElementSetInnerText _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_html_element_set_inner_text _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+-- method DOMHTMLElement::set_lang
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_set_lang" webkit_dom_html_element_set_lang :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLElementSetLang ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLElementSetLang _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_element_set_lang _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLElement::set_outer_html
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "contents", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "contents", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_set_outer_html" webkit_dom_html_element_set_outer_html :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    CString ->                              -- contents : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+{-# DEPRECATED dOMHTMLElementSetOuterHtml ["(Since version 2.8)","Use webkit_dom_element_set_outer_html() instead."]#-}
+dOMHTMLElementSetOuterHtml ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- contents
+    m ()
+dOMHTMLElementSetOuterHtml _obj contents = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    contents' <- textToCString contents
+    onException (do
+        propagateGError $ webkit_dom_html_element_set_outer_html _obj' contents'
+        touchManagedPtr _obj
+        freeMem contents'
+        return ()
+     ) (do
+        freeMem contents'
+     )
+
+-- method DOMHTMLElement::set_outer_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_set_outer_text" webkit_dom_html_element_set_outer_text :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMHTMLElementSetOuterText ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLElementSetOuterText _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_html_element_set_outer_text _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+-- method DOMHTMLElement::set_tab_index
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_set_tab_index" webkit_dom_html_element_set_tab_index :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLElementSetTabIndex ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLElementSetTabIndex _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_element_set_tab_index _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLElement::set_title
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_element_set_title" webkit_dom_html_element_set_title :: 
+    Ptr DOMHTMLElement ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLElementSetTitle ::
+    (MonadIO m, DOMHTMLElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLElementSetTitle _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_element_set_title _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLElement.hs-boot
@@ -0,0 +1,28 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLElement = DOMHTMLElement (ForeignPtr DOMHTMLElement)
+instance GObject DOMHTMLElement where
+class GObject o => DOMHTMLElementK o
+instance (GObject o, IsDescendantOf DOMHTMLElement o) => DOMHTMLElementK o
+data DOMHTMLElementAccessKeyPropertyInfo
+data DOMHTMLElementChildrenPropertyInfo
+data DOMHTMLElementContentEditablePropertyInfo
+data DOMHTMLElementDirPropertyInfo
+data DOMHTMLElementDraggablePropertyInfo
+data DOMHTMLElementHiddenPropertyInfo
+data DOMHTMLElementInnerTextPropertyInfo
+data DOMHTMLElementIsContentEditablePropertyInfo
+data DOMHTMLElementLangPropertyInfo
+data DOMHTMLElementOuterTextPropertyInfo
+data DOMHTMLElementSpellcheckPropertyInfo
+data DOMHTMLElementTabIndexPropertyInfo
+data DOMHTMLElementTitlePropertyInfo
+data DOMHTMLElementTranslatePropertyInfo
+data DOMHTMLElementWebkitdropzonePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLEmbedElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLEmbedElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLEmbedElement.hs
@@ -0,0 +1,618 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLEmbedElement
+    ( 
+
+-- * Exported types
+    DOMHTMLEmbedElement(..)                 ,
+    DOMHTMLEmbedElementK                    ,
+    toDOMHTMLEmbedElement                   ,
+    noDOMHTMLEmbedElement                   ,
+
+
+ -- * Methods
+-- ** dOMHTMLEmbedElementGetAlign
+    dOMHTMLEmbedElementGetAlign             ,
+
+
+-- ** dOMHTMLEmbedElementGetHeight
+    dOMHTMLEmbedElementGetHeight            ,
+
+
+-- ** dOMHTMLEmbedElementGetName
+    dOMHTMLEmbedElementGetName              ,
+
+
+-- ** dOMHTMLEmbedElementGetSrc
+    dOMHTMLEmbedElementGetSrc               ,
+
+
+-- ** dOMHTMLEmbedElementGetTypeAttr
+    dOMHTMLEmbedElementGetTypeAttr          ,
+
+
+-- ** dOMHTMLEmbedElementGetWidth
+    dOMHTMLEmbedElementGetWidth             ,
+
+
+-- ** dOMHTMLEmbedElementSetAlign
+    dOMHTMLEmbedElementSetAlign             ,
+
+
+-- ** dOMHTMLEmbedElementSetHeight
+    dOMHTMLEmbedElementSetHeight            ,
+
+
+-- ** dOMHTMLEmbedElementSetName
+    dOMHTMLEmbedElementSetName              ,
+
+
+-- ** dOMHTMLEmbedElementSetSrc
+    dOMHTMLEmbedElementSetSrc               ,
+
+
+-- ** dOMHTMLEmbedElementSetTypeAttr
+    dOMHTMLEmbedElementSetTypeAttr          ,
+
+
+-- ** dOMHTMLEmbedElementSetWidth
+    dOMHTMLEmbedElementSetWidth             ,
+
+
+
+
+ -- * Properties
+-- ** Align
+    DOMHTMLEmbedElementAlignPropertyInfo    ,
+    constructDOMHTMLEmbedElementAlign       ,
+    getDOMHTMLEmbedElementAlign             ,
+    setDOMHTMLEmbedElementAlign             ,
+
+
+-- ** Height
+    DOMHTMLEmbedElementHeightPropertyInfo   ,
+    constructDOMHTMLEmbedElementHeight      ,
+    getDOMHTMLEmbedElementHeight            ,
+    setDOMHTMLEmbedElementHeight            ,
+
+
+-- ** Name
+    DOMHTMLEmbedElementNamePropertyInfo     ,
+    constructDOMHTMLEmbedElementName        ,
+    getDOMHTMLEmbedElementName              ,
+    setDOMHTMLEmbedElementName              ,
+
+
+-- ** Src
+    DOMHTMLEmbedElementSrcPropertyInfo      ,
+    constructDOMHTMLEmbedElementSrc         ,
+    getDOMHTMLEmbedElementSrc               ,
+    setDOMHTMLEmbedElementSrc               ,
+
+
+-- ** Type
+    DOMHTMLEmbedElementTypePropertyInfo     ,
+    constructDOMHTMLEmbedElementType        ,
+    getDOMHTMLEmbedElementType              ,
+    setDOMHTMLEmbedElementType              ,
+
+
+-- ** Width
+    DOMHTMLEmbedElementWidthPropertyInfo    ,
+    constructDOMHTMLEmbedElementWidth       ,
+    getDOMHTMLEmbedElementWidth             ,
+    setDOMHTMLEmbedElementWidth             ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLEmbedElement = DOMHTMLEmbedElement (ForeignPtr DOMHTMLEmbedElement)
+foreign import ccall "webkit_dom_html_embed_element_get_type"
+    c_webkit_dom_html_embed_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLEmbedElement = DOMHTMLEmbedElementParentTypes
+type DOMHTMLEmbedElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLEmbedElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_embed_element_get_type
+    
+
+class GObject o => DOMHTMLEmbedElementK o
+instance (GObject o, IsDescendantOf DOMHTMLEmbedElement o) => DOMHTMLEmbedElementK o
+
+toDOMHTMLEmbedElement :: DOMHTMLEmbedElementK o => o -> IO DOMHTMLEmbedElement
+toDOMHTMLEmbedElement = unsafeCastTo DOMHTMLEmbedElement
+
+noDOMHTMLEmbedElement :: Maybe DOMHTMLEmbedElement
+noDOMHTMLEmbedElement = Nothing
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLEmbedElementAlign :: (MonadIO m, DOMHTMLEmbedElementK o) => o -> m T.Text
+getDOMHTMLEmbedElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLEmbedElementAlign :: (MonadIO m, DOMHTMLEmbedElementK o) => o -> T.Text -> m ()
+setDOMHTMLEmbedElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLEmbedElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLEmbedElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLEmbedElementAlignPropertyInfo
+instance AttrInfo DOMHTMLEmbedElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLEmbedElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLEmbedElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLEmbedElementAlignPropertyInfo = DOMHTMLEmbedElementK
+    type AttrGetType DOMHTMLEmbedElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLEmbedElementAlignPropertyInfo = "DOMHTMLEmbedElement::align"
+    attrGet _ = getDOMHTMLEmbedElementAlign
+    attrSet _ = setDOMHTMLEmbedElementAlign
+    attrConstruct _ = constructDOMHTMLEmbedElementAlign
+
+-- VVV Prop "height"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLEmbedElementHeight :: (MonadIO m, DOMHTMLEmbedElementK o) => o -> m Int64
+getDOMHTMLEmbedElementHeight obj = liftIO $ getObjectPropertyInt64 obj "height"
+
+setDOMHTMLEmbedElementHeight :: (MonadIO m, DOMHTMLEmbedElementK o) => o -> Int64 -> m ()
+setDOMHTMLEmbedElementHeight obj val = liftIO $ setObjectPropertyInt64 obj "height" val
+
+constructDOMHTMLEmbedElementHeight :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLEmbedElementHeight val = constructObjectPropertyInt64 "height" val
+
+data DOMHTMLEmbedElementHeightPropertyInfo
+instance AttrInfo DOMHTMLEmbedElementHeightPropertyInfo where
+    type AttrAllowedOps DOMHTMLEmbedElementHeightPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLEmbedElementHeightPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLEmbedElementHeightPropertyInfo = DOMHTMLEmbedElementK
+    type AttrGetType DOMHTMLEmbedElementHeightPropertyInfo = Int64
+    type AttrLabel DOMHTMLEmbedElementHeightPropertyInfo = "DOMHTMLEmbedElement::height"
+    attrGet _ = getDOMHTMLEmbedElementHeight
+    attrSet _ = setDOMHTMLEmbedElementHeight
+    attrConstruct _ = constructDOMHTMLEmbedElementHeight
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLEmbedElementName :: (MonadIO m, DOMHTMLEmbedElementK o) => o -> m T.Text
+getDOMHTMLEmbedElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLEmbedElementName :: (MonadIO m, DOMHTMLEmbedElementK o) => o -> T.Text -> m ()
+setDOMHTMLEmbedElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLEmbedElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLEmbedElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLEmbedElementNamePropertyInfo
+instance AttrInfo DOMHTMLEmbedElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLEmbedElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLEmbedElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLEmbedElementNamePropertyInfo = DOMHTMLEmbedElementK
+    type AttrGetType DOMHTMLEmbedElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLEmbedElementNamePropertyInfo = "DOMHTMLEmbedElement::name"
+    attrGet _ = getDOMHTMLEmbedElementName
+    attrSet _ = setDOMHTMLEmbedElementName
+    attrConstruct _ = constructDOMHTMLEmbedElementName
+
+-- VVV Prop "src"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLEmbedElementSrc :: (MonadIO m, DOMHTMLEmbedElementK o) => o -> m T.Text
+getDOMHTMLEmbedElementSrc obj = liftIO $ getObjectPropertyString obj "src"
+
+setDOMHTMLEmbedElementSrc :: (MonadIO m, DOMHTMLEmbedElementK o) => o -> T.Text -> m ()
+setDOMHTMLEmbedElementSrc obj val = liftIO $ setObjectPropertyString obj "src" val
+
+constructDOMHTMLEmbedElementSrc :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLEmbedElementSrc val = constructObjectPropertyString "src" val
+
+data DOMHTMLEmbedElementSrcPropertyInfo
+instance AttrInfo DOMHTMLEmbedElementSrcPropertyInfo where
+    type AttrAllowedOps DOMHTMLEmbedElementSrcPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLEmbedElementSrcPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLEmbedElementSrcPropertyInfo = DOMHTMLEmbedElementK
+    type AttrGetType DOMHTMLEmbedElementSrcPropertyInfo = T.Text
+    type AttrLabel DOMHTMLEmbedElementSrcPropertyInfo = "DOMHTMLEmbedElement::src"
+    attrGet _ = getDOMHTMLEmbedElementSrc
+    attrSet _ = setDOMHTMLEmbedElementSrc
+    attrConstruct _ = constructDOMHTMLEmbedElementSrc
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLEmbedElementType :: (MonadIO m, DOMHTMLEmbedElementK o) => o -> m T.Text
+getDOMHTMLEmbedElementType obj = liftIO $ getObjectPropertyString obj "type"
+
+setDOMHTMLEmbedElementType :: (MonadIO m, DOMHTMLEmbedElementK o) => o -> T.Text -> m ()
+setDOMHTMLEmbedElementType obj val = liftIO $ setObjectPropertyString obj "type" val
+
+constructDOMHTMLEmbedElementType :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLEmbedElementType val = constructObjectPropertyString "type" val
+
+data DOMHTMLEmbedElementTypePropertyInfo
+instance AttrInfo DOMHTMLEmbedElementTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLEmbedElementTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLEmbedElementTypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLEmbedElementTypePropertyInfo = DOMHTMLEmbedElementK
+    type AttrGetType DOMHTMLEmbedElementTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLEmbedElementTypePropertyInfo = "DOMHTMLEmbedElement::type"
+    attrGet _ = getDOMHTMLEmbedElementType
+    attrSet _ = setDOMHTMLEmbedElementType
+    attrConstruct _ = constructDOMHTMLEmbedElementType
+
+-- VVV Prop "width"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLEmbedElementWidth :: (MonadIO m, DOMHTMLEmbedElementK o) => o -> m Int64
+getDOMHTMLEmbedElementWidth obj = liftIO $ getObjectPropertyInt64 obj "width"
+
+setDOMHTMLEmbedElementWidth :: (MonadIO m, DOMHTMLEmbedElementK o) => o -> Int64 -> m ()
+setDOMHTMLEmbedElementWidth obj val = liftIO $ setObjectPropertyInt64 obj "width" val
+
+constructDOMHTMLEmbedElementWidth :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLEmbedElementWidth val = constructObjectPropertyInt64 "width" val
+
+data DOMHTMLEmbedElementWidthPropertyInfo
+instance AttrInfo DOMHTMLEmbedElementWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLEmbedElementWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLEmbedElementWidthPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLEmbedElementWidthPropertyInfo = DOMHTMLEmbedElementK
+    type AttrGetType DOMHTMLEmbedElementWidthPropertyInfo = Int64
+    type AttrLabel DOMHTMLEmbedElementWidthPropertyInfo = "DOMHTMLEmbedElement::width"
+    attrGet _ = getDOMHTMLEmbedElementWidth
+    attrSet _ = setDOMHTMLEmbedElementWidth
+    attrConstruct _ = constructDOMHTMLEmbedElementWidth
+
+type instance AttributeList DOMHTMLEmbedElement = DOMHTMLEmbedElementAttributeList
+type DOMHTMLEmbedElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLEmbedElementAlignPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("height", DOMHTMLEmbedElementHeightPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("name", DOMHTMLEmbedElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("src", DOMHTMLEmbedElementSrcPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLEmbedElementTypePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("width", DOMHTMLEmbedElementWidthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLEmbedElement = DOMHTMLEmbedElementSignalList
+type DOMHTMLEmbedElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLEmbedElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_embed_element_get_align" webkit_dom_html_embed_element_get_align :: 
+    Ptr DOMHTMLEmbedElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement"
+    IO CString
+
+
+dOMHTMLEmbedElementGetAlign ::
+    (MonadIO m, DOMHTMLEmbedElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLEmbedElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_embed_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_embed_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLEmbedElement::get_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_embed_element_get_height" webkit_dom_html_embed_element_get_height :: 
+    Ptr DOMHTMLEmbedElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement"
+    IO Int64
+
+
+dOMHTMLEmbedElementGetHeight ::
+    (MonadIO m, DOMHTMLEmbedElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLEmbedElementGetHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_embed_element_get_height _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLEmbedElement::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_embed_element_get_name" webkit_dom_html_embed_element_get_name :: 
+    Ptr DOMHTMLEmbedElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement"
+    IO CString
+
+
+dOMHTMLEmbedElementGetName ::
+    (MonadIO m, DOMHTMLEmbedElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLEmbedElementGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_embed_element_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_embed_element_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLEmbedElement::get_src
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_embed_element_get_src" webkit_dom_html_embed_element_get_src :: 
+    Ptr DOMHTMLEmbedElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement"
+    IO CString
+
+
+dOMHTMLEmbedElementGetSrc ::
+    (MonadIO m, DOMHTMLEmbedElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLEmbedElementGetSrc _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_embed_element_get_src _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_embed_element_get_src" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLEmbedElement::get_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_embed_element_get_type_attr" webkit_dom_html_embed_element_get_type_attr :: 
+    Ptr DOMHTMLEmbedElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement"
+    IO CString
+
+
+dOMHTMLEmbedElementGetTypeAttr ::
+    (MonadIO m, DOMHTMLEmbedElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLEmbedElementGetTypeAttr _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_embed_element_get_type_attr _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_embed_element_get_type_attr" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLEmbedElement::get_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_embed_element_get_width" webkit_dom_html_embed_element_get_width :: 
+    Ptr DOMHTMLEmbedElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement"
+    IO Int64
+
+
+dOMHTMLEmbedElementGetWidth ::
+    (MonadIO m, DOMHTMLEmbedElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLEmbedElementGetWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_embed_element_get_width _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLEmbedElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_embed_element_set_align" webkit_dom_html_embed_element_set_align :: 
+    Ptr DOMHTMLEmbedElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLEmbedElementSetAlign ::
+    (MonadIO m, DOMHTMLEmbedElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLEmbedElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_embed_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLEmbedElement::set_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_embed_element_set_height" webkit_dom_html_embed_element_set_height :: 
+    Ptr DOMHTMLEmbedElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLEmbedElementSetHeight ::
+    (MonadIO m, DOMHTMLEmbedElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLEmbedElementSetHeight _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_embed_element_set_height _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLEmbedElement::set_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_embed_element_set_name" webkit_dom_html_embed_element_set_name :: 
+    Ptr DOMHTMLEmbedElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLEmbedElementSetName ::
+    (MonadIO m, DOMHTMLEmbedElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLEmbedElementSetName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_embed_element_set_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLEmbedElement::set_src
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_embed_element_set_src" webkit_dom_html_embed_element_set_src :: 
+    Ptr DOMHTMLEmbedElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLEmbedElementSetSrc ::
+    (MonadIO m, DOMHTMLEmbedElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLEmbedElementSetSrc _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_embed_element_set_src _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLEmbedElement::set_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_embed_element_set_type_attr" webkit_dom_html_embed_element_set_type_attr :: 
+    Ptr DOMHTMLEmbedElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLEmbedElementSetTypeAttr ::
+    (MonadIO m, DOMHTMLEmbedElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLEmbedElementSetTypeAttr _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_embed_element_set_type_attr _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLEmbedElement::set_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_embed_element_set_width" webkit_dom_html_embed_element_set_width :: 
+    Ptr DOMHTMLEmbedElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLEmbedElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLEmbedElementSetWidth ::
+    (MonadIO m, DOMHTMLEmbedElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLEmbedElementSetWidth _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_embed_element_set_width _obj' value
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLEmbedElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLEmbedElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLEmbedElement.hs-boot
@@ -0,0 +1,19 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLEmbedElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLEmbedElement = DOMHTMLEmbedElement (ForeignPtr DOMHTMLEmbedElement)
+instance GObject DOMHTMLEmbedElement where
+class GObject o => DOMHTMLEmbedElementK o
+instance (GObject o, IsDescendantOf DOMHTMLEmbedElement o) => DOMHTMLEmbedElementK o
+data DOMHTMLEmbedElementAlignPropertyInfo
+data DOMHTMLEmbedElementHeightPropertyInfo
+data DOMHTMLEmbedElementNamePropertyInfo
+data DOMHTMLEmbedElementSrcPropertyInfo
+data DOMHTMLEmbedElementTypePropertyInfo
+data DOMHTMLEmbedElementWidthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLFieldSetElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLFieldSetElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLFieldSetElement.hs
@@ -0,0 +1,271 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLFieldSetElement
+    ( 
+
+-- * Exported types
+    DOMHTMLFieldSetElement(..)              ,
+    DOMHTMLFieldSetElementK                 ,
+    toDOMHTMLFieldSetElement                ,
+    noDOMHTMLFieldSetElement                ,
+
+
+ -- * Methods
+-- ** dOMHTMLFieldSetElementGetForm
+    dOMHTMLFieldSetElementGetForm           ,
+
+
+
+
+ -- * Properties
+-- ** Disabled
+    DOMHTMLFieldSetElementDisabledPropertyInfo,
+    constructDOMHTMLFieldSetElementDisabled ,
+    getDOMHTMLFieldSetElementDisabled       ,
+    setDOMHTMLFieldSetElementDisabled       ,
+
+
+-- ** Elements
+    DOMHTMLFieldSetElementElementsPropertyInfo,
+    getDOMHTMLFieldSetElementElements       ,
+
+
+-- ** Form
+    DOMHTMLFieldSetElementFormPropertyInfo  ,
+    getDOMHTMLFieldSetElementForm           ,
+
+
+-- ** Name
+    DOMHTMLFieldSetElementNamePropertyInfo  ,
+    constructDOMHTMLFieldSetElementName     ,
+    getDOMHTMLFieldSetElementName           ,
+    setDOMHTMLFieldSetElementName           ,
+
+
+-- ** Type
+    DOMHTMLFieldSetElementTypePropertyInfo  ,
+    getDOMHTMLFieldSetElementType           ,
+
+
+-- ** ValidationMessage
+    DOMHTMLFieldSetElementValidationMessagePropertyInfo,
+    getDOMHTMLFieldSetElementValidationMessage,
+
+
+-- ** WillValidate
+    DOMHTMLFieldSetElementWillValidatePropertyInfo,
+    getDOMHTMLFieldSetElementWillValidate   ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLFieldSetElement = DOMHTMLFieldSetElement (ForeignPtr DOMHTMLFieldSetElement)
+foreign import ccall "webkit_dom_html_field_set_element_get_type"
+    c_webkit_dom_html_field_set_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLFieldSetElement = DOMHTMLFieldSetElementParentTypes
+type DOMHTMLFieldSetElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLFieldSetElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_field_set_element_get_type
+    
+
+class GObject o => DOMHTMLFieldSetElementK o
+instance (GObject o, IsDescendantOf DOMHTMLFieldSetElement o) => DOMHTMLFieldSetElementK o
+
+toDOMHTMLFieldSetElement :: DOMHTMLFieldSetElementK o => o -> IO DOMHTMLFieldSetElement
+toDOMHTMLFieldSetElement = unsafeCastTo DOMHTMLFieldSetElement
+
+noDOMHTMLFieldSetElement :: Maybe DOMHTMLFieldSetElement
+noDOMHTMLFieldSetElement = Nothing
+
+-- VVV Prop "disabled"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFieldSetElementDisabled :: (MonadIO m, DOMHTMLFieldSetElementK o) => o -> m Bool
+getDOMHTMLFieldSetElementDisabled obj = liftIO $ getObjectPropertyBool obj "disabled"
+
+setDOMHTMLFieldSetElementDisabled :: (MonadIO m, DOMHTMLFieldSetElementK o) => o -> Bool -> m ()
+setDOMHTMLFieldSetElementDisabled obj val = liftIO $ setObjectPropertyBool obj "disabled" val
+
+constructDOMHTMLFieldSetElementDisabled :: Bool -> IO ([Char], GValue)
+constructDOMHTMLFieldSetElementDisabled val = constructObjectPropertyBool "disabled" val
+
+data DOMHTMLFieldSetElementDisabledPropertyInfo
+instance AttrInfo DOMHTMLFieldSetElementDisabledPropertyInfo where
+    type AttrAllowedOps DOMHTMLFieldSetElementDisabledPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFieldSetElementDisabledPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLFieldSetElementDisabledPropertyInfo = DOMHTMLFieldSetElementK
+    type AttrGetType DOMHTMLFieldSetElementDisabledPropertyInfo = Bool
+    type AttrLabel DOMHTMLFieldSetElementDisabledPropertyInfo = "DOMHTMLFieldSetElement::disabled"
+    attrGet _ = getDOMHTMLFieldSetElementDisabled
+    attrSet _ = setDOMHTMLFieldSetElementDisabled
+    attrConstruct _ = constructDOMHTMLFieldSetElementDisabled
+
+-- VVV Prop "elements"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLFieldSetElementElements :: (MonadIO m, DOMHTMLFieldSetElementK o) => o -> m DOMHTMLCollection
+getDOMHTMLFieldSetElementElements obj = liftIO $ getObjectPropertyObject obj "elements" DOMHTMLCollection
+
+data DOMHTMLFieldSetElementElementsPropertyInfo
+instance AttrInfo DOMHTMLFieldSetElementElementsPropertyInfo where
+    type AttrAllowedOps DOMHTMLFieldSetElementElementsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFieldSetElementElementsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLFieldSetElementElementsPropertyInfo = DOMHTMLFieldSetElementK
+    type AttrGetType DOMHTMLFieldSetElementElementsPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMHTMLFieldSetElementElementsPropertyInfo = "DOMHTMLFieldSetElement::elements"
+    attrGet _ = getDOMHTMLFieldSetElementElements
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "form"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLFieldSetElementForm :: (MonadIO m, DOMHTMLFieldSetElementK o) => o -> m DOMHTMLFormElement
+getDOMHTMLFieldSetElementForm obj = liftIO $ getObjectPropertyObject obj "form" DOMHTMLFormElement
+
+data DOMHTMLFieldSetElementFormPropertyInfo
+instance AttrInfo DOMHTMLFieldSetElementFormPropertyInfo where
+    type AttrAllowedOps DOMHTMLFieldSetElementFormPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFieldSetElementFormPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLFieldSetElementFormPropertyInfo = DOMHTMLFieldSetElementK
+    type AttrGetType DOMHTMLFieldSetElementFormPropertyInfo = DOMHTMLFormElement
+    type AttrLabel DOMHTMLFieldSetElementFormPropertyInfo = "DOMHTMLFieldSetElement::form"
+    attrGet _ = getDOMHTMLFieldSetElementForm
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFieldSetElementName :: (MonadIO m, DOMHTMLFieldSetElementK o) => o -> m T.Text
+getDOMHTMLFieldSetElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLFieldSetElementName :: (MonadIO m, DOMHTMLFieldSetElementK o) => o -> T.Text -> m ()
+setDOMHTMLFieldSetElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLFieldSetElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFieldSetElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLFieldSetElementNamePropertyInfo
+instance AttrInfo DOMHTMLFieldSetElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLFieldSetElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFieldSetElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFieldSetElementNamePropertyInfo = DOMHTMLFieldSetElementK
+    type AttrGetType DOMHTMLFieldSetElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLFieldSetElementNamePropertyInfo = "DOMHTMLFieldSetElement::name"
+    attrGet _ = getDOMHTMLFieldSetElementName
+    attrSet _ = setDOMHTMLFieldSetElementName
+    attrConstruct _ = constructDOMHTMLFieldSetElementName
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLFieldSetElementType :: (MonadIO m, DOMHTMLFieldSetElementK o) => o -> m T.Text
+getDOMHTMLFieldSetElementType obj = liftIO $ getObjectPropertyString obj "type"
+
+data DOMHTMLFieldSetElementTypePropertyInfo
+instance AttrInfo DOMHTMLFieldSetElementTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLFieldSetElementTypePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFieldSetElementTypePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLFieldSetElementTypePropertyInfo = DOMHTMLFieldSetElementK
+    type AttrGetType DOMHTMLFieldSetElementTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLFieldSetElementTypePropertyInfo = "DOMHTMLFieldSetElement::type"
+    attrGet _ = getDOMHTMLFieldSetElementType
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "validation-message"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLFieldSetElementValidationMessage :: (MonadIO m, DOMHTMLFieldSetElementK o) => o -> m T.Text
+getDOMHTMLFieldSetElementValidationMessage obj = liftIO $ getObjectPropertyString obj "validation-message"
+
+data DOMHTMLFieldSetElementValidationMessagePropertyInfo
+instance AttrInfo DOMHTMLFieldSetElementValidationMessagePropertyInfo where
+    type AttrAllowedOps DOMHTMLFieldSetElementValidationMessagePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFieldSetElementValidationMessagePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLFieldSetElementValidationMessagePropertyInfo = DOMHTMLFieldSetElementK
+    type AttrGetType DOMHTMLFieldSetElementValidationMessagePropertyInfo = T.Text
+    type AttrLabel DOMHTMLFieldSetElementValidationMessagePropertyInfo = "DOMHTMLFieldSetElement::validation-message"
+    attrGet _ = getDOMHTMLFieldSetElementValidationMessage
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "will-validate"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLFieldSetElementWillValidate :: (MonadIO m, DOMHTMLFieldSetElementK o) => o -> m Bool
+getDOMHTMLFieldSetElementWillValidate obj = liftIO $ getObjectPropertyBool obj "will-validate"
+
+data DOMHTMLFieldSetElementWillValidatePropertyInfo
+instance AttrInfo DOMHTMLFieldSetElementWillValidatePropertyInfo where
+    type AttrAllowedOps DOMHTMLFieldSetElementWillValidatePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFieldSetElementWillValidatePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLFieldSetElementWillValidatePropertyInfo = DOMHTMLFieldSetElementK
+    type AttrGetType DOMHTMLFieldSetElementWillValidatePropertyInfo = Bool
+    type AttrLabel DOMHTMLFieldSetElementWillValidatePropertyInfo = "DOMHTMLFieldSetElement::will-validate"
+    attrGet _ = getDOMHTMLFieldSetElementWillValidate
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMHTMLFieldSetElement = DOMHTMLFieldSetElementAttributeList
+type DOMHTMLFieldSetElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("disabled", DOMHTMLFieldSetElementDisabledPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("elements", DOMHTMLFieldSetElementElementsPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("form", DOMHTMLFieldSetElementFormPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("name", DOMHTMLFieldSetElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLFieldSetElementTypePropertyInfo), '("validation-message", DOMHTMLFieldSetElementValidationMessagePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("will-validate", DOMHTMLFieldSetElementWillValidatePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLFieldSetElement = DOMHTMLFieldSetElementSignalList
+type DOMHTMLFieldSetElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLFieldSetElement::get_form
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFieldSetElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFieldSetElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_field_set_element_get_form" webkit_dom_html_field_set_element_get_form :: 
+    Ptr DOMHTMLFieldSetElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFieldSetElement"
+    IO (Ptr DOMHTMLFormElement)
+
+
+dOMHTMLFieldSetElementGetForm ::
+    (MonadIO m, DOMHTMLFieldSetElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLFormElement
+dOMHTMLFieldSetElementGetForm _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_field_set_element_get_form _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_field_set_element_get_form" result
+    result' <- (newObject DOMHTMLFormElement) result
+    touchManagedPtr _obj
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLFieldSetElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLFieldSetElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLFieldSetElement.hs-boot
@@ -0,0 +1,20 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLFieldSetElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLFieldSetElement = DOMHTMLFieldSetElement (ForeignPtr DOMHTMLFieldSetElement)
+instance GObject DOMHTMLFieldSetElement where
+class GObject o => DOMHTMLFieldSetElementK o
+instance (GObject o, IsDescendantOf DOMHTMLFieldSetElement o) => DOMHTMLFieldSetElementK o
+data DOMHTMLFieldSetElementDisabledPropertyInfo
+data DOMHTMLFieldSetElementElementsPropertyInfo
+data DOMHTMLFieldSetElementFormPropertyInfo
+data DOMHTMLFieldSetElementNamePropertyInfo
+data DOMHTMLFieldSetElementTypePropertyInfo
+data DOMHTMLFieldSetElementValidationMessagePropertyInfo
+data DOMHTMLFieldSetElementWillValidatePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLFontElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLFontElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLFontElement.hs
@@ -0,0 +1,346 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLFontElement
+    ( 
+
+-- * Exported types
+    DOMHTMLFontElement(..)                  ,
+    DOMHTMLFontElementK                     ,
+    toDOMHTMLFontElement                    ,
+    noDOMHTMLFontElement                    ,
+
+
+ -- * Methods
+-- ** dOMHTMLFontElementGetColor
+    dOMHTMLFontElementGetColor              ,
+
+
+-- ** dOMHTMLFontElementGetFace
+    dOMHTMLFontElementGetFace               ,
+
+
+-- ** dOMHTMLFontElementGetSize
+    dOMHTMLFontElementGetSize               ,
+
+
+-- ** dOMHTMLFontElementSetColor
+    dOMHTMLFontElementSetColor              ,
+
+
+-- ** dOMHTMLFontElementSetFace
+    dOMHTMLFontElementSetFace               ,
+
+
+-- ** dOMHTMLFontElementSetSize
+    dOMHTMLFontElementSetSize               ,
+
+
+
+
+ -- * Properties
+-- ** Color
+    DOMHTMLFontElementColorPropertyInfo     ,
+    constructDOMHTMLFontElementColor        ,
+    getDOMHTMLFontElementColor              ,
+    setDOMHTMLFontElementColor              ,
+
+
+-- ** Face
+    DOMHTMLFontElementFacePropertyInfo      ,
+    constructDOMHTMLFontElementFace         ,
+    getDOMHTMLFontElementFace               ,
+    setDOMHTMLFontElementFace               ,
+
+
+-- ** Size
+    DOMHTMLFontElementSizePropertyInfo      ,
+    constructDOMHTMLFontElementSize         ,
+    getDOMHTMLFontElementSize               ,
+    setDOMHTMLFontElementSize               ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLFontElement = DOMHTMLFontElement (ForeignPtr DOMHTMLFontElement)
+foreign import ccall "webkit_dom_html_font_element_get_type"
+    c_webkit_dom_html_font_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLFontElement = DOMHTMLFontElementParentTypes
+type DOMHTMLFontElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLFontElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_font_element_get_type
+    
+
+class GObject o => DOMHTMLFontElementK o
+instance (GObject o, IsDescendantOf DOMHTMLFontElement o) => DOMHTMLFontElementK o
+
+toDOMHTMLFontElement :: DOMHTMLFontElementK o => o -> IO DOMHTMLFontElement
+toDOMHTMLFontElement = unsafeCastTo DOMHTMLFontElement
+
+noDOMHTMLFontElement :: Maybe DOMHTMLFontElement
+noDOMHTMLFontElement = Nothing
+
+-- VVV Prop "color"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFontElementColor :: (MonadIO m, DOMHTMLFontElementK o) => o -> m T.Text
+getDOMHTMLFontElementColor obj = liftIO $ getObjectPropertyString obj "color"
+
+setDOMHTMLFontElementColor :: (MonadIO m, DOMHTMLFontElementK o) => o -> T.Text -> m ()
+setDOMHTMLFontElementColor obj val = liftIO $ setObjectPropertyString obj "color" val
+
+constructDOMHTMLFontElementColor :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFontElementColor val = constructObjectPropertyString "color" val
+
+data DOMHTMLFontElementColorPropertyInfo
+instance AttrInfo DOMHTMLFontElementColorPropertyInfo where
+    type AttrAllowedOps DOMHTMLFontElementColorPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFontElementColorPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFontElementColorPropertyInfo = DOMHTMLFontElementK
+    type AttrGetType DOMHTMLFontElementColorPropertyInfo = T.Text
+    type AttrLabel DOMHTMLFontElementColorPropertyInfo = "DOMHTMLFontElement::color"
+    attrGet _ = getDOMHTMLFontElementColor
+    attrSet _ = setDOMHTMLFontElementColor
+    attrConstruct _ = constructDOMHTMLFontElementColor
+
+-- VVV Prop "face"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFontElementFace :: (MonadIO m, DOMHTMLFontElementK o) => o -> m T.Text
+getDOMHTMLFontElementFace obj = liftIO $ getObjectPropertyString obj "face"
+
+setDOMHTMLFontElementFace :: (MonadIO m, DOMHTMLFontElementK o) => o -> T.Text -> m ()
+setDOMHTMLFontElementFace obj val = liftIO $ setObjectPropertyString obj "face" val
+
+constructDOMHTMLFontElementFace :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFontElementFace val = constructObjectPropertyString "face" val
+
+data DOMHTMLFontElementFacePropertyInfo
+instance AttrInfo DOMHTMLFontElementFacePropertyInfo where
+    type AttrAllowedOps DOMHTMLFontElementFacePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFontElementFacePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFontElementFacePropertyInfo = DOMHTMLFontElementK
+    type AttrGetType DOMHTMLFontElementFacePropertyInfo = T.Text
+    type AttrLabel DOMHTMLFontElementFacePropertyInfo = "DOMHTMLFontElement::face"
+    attrGet _ = getDOMHTMLFontElementFace
+    attrSet _ = setDOMHTMLFontElementFace
+    attrConstruct _ = constructDOMHTMLFontElementFace
+
+-- VVV Prop "size"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFontElementSize :: (MonadIO m, DOMHTMLFontElementK o) => o -> m T.Text
+getDOMHTMLFontElementSize obj = liftIO $ getObjectPropertyString obj "size"
+
+setDOMHTMLFontElementSize :: (MonadIO m, DOMHTMLFontElementK o) => o -> T.Text -> m ()
+setDOMHTMLFontElementSize obj val = liftIO $ setObjectPropertyString obj "size" val
+
+constructDOMHTMLFontElementSize :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFontElementSize val = constructObjectPropertyString "size" val
+
+data DOMHTMLFontElementSizePropertyInfo
+instance AttrInfo DOMHTMLFontElementSizePropertyInfo where
+    type AttrAllowedOps DOMHTMLFontElementSizePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFontElementSizePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFontElementSizePropertyInfo = DOMHTMLFontElementK
+    type AttrGetType DOMHTMLFontElementSizePropertyInfo = T.Text
+    type AttrLabel DOMHTMLFontElementSizePropertyInfo = "DOMHTMLFontElement::size"
+    attrGet _ = getDOMHTMLFontElementSize
+    attrSet _ = setDOMHTMLFontElementSize
+    attrConstruct _ = constructDOMHTMLFontElementSize
+
+type instance AttributeList DOMHTMLFontElement = DOMHTMLFontElementAttributeList
+type DOMHTMLFontElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("color", DOMHTMLFontElementColorPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("face", DOMHTMLFontElementFacePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("size", DOMHTMLFontElementSizePropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLFontElement = DOMHTMLFontElementSignalList
+type DOMHTMLFontElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLFontElement::get_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_font_element_get_color" webkit_dom_html_font_element_get_color :: 
+    Ptr DOMHTMLFontElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFontElement"
+    IO CString
+
+
+dOMHTMLFontElementGetColor ::
+    (MonadIO m, DOMHTMLFontElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFontElementGetColor _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_font_element_get_color _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_font_element_get_color" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFontElement::get_face
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_font_element_get_face" webkit_dom_html_font_element_get_face :: 
+    Ptr DOMHTMLFontElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFontElement"
+    IO CString
+
+
+dOMHTMLFontElementGetFace ::
+    (MonadIO m, DOMHTMLFontElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFontElementGetFace _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_font_element_get_face _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_font_element_get_face" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFontElement::get_size
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_font_element_get_size" webkit_dom_html_font_element_get_size :: 
+    Ptr DOMHTMLFontElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFontElement"
+    IO CString
+
+
+dOMHTMLFontElementGetSize ::
+    (MonadIO m, DOMHTMLFontElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFontElementGetSize _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_font_element_get_size _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_font_element_get_size" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFontElement::set_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_font_element_set_color" webkit_dom_html_font_element_set_color :: 
+    Ptr DOMHTMLFontElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFontElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFontElementSetColor ::
+    (MonadIO m, DOMHTMLFontElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFontElementSetColor _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_font_element_set_color _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFontElement::set_face
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_font_element_set_face" webkit_dom_html_font_element_set_face :: 
+    Ptr DOMHTMLFontElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFontElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFontElementSetFace ::
+    (MonadIO m, DOMHTMLFontElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFontElementSetFace _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_font_element_set_face _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFontElement::set_size
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFontElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_font_element_set_size" webkit_dom_html_font_element_set_size :: 
+    Ptr DOMHTMLFontElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFontElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFontElementSetSize ::
+    (MonadIO m, DOMHTMLFontElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFontElementSetSize _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_font_element_set_size _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLFontElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLFontElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLFontElement.hs-boot
@@ -0,0 +1,16 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLFontElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLFontElement = DOMHTMLFontElement (ForeignPtr DOMHTMLFontElement)
+instance GObject DOMHTMLFontElement where
+class GObject o => DOMHTMLFontElementK o
+instance (GObject o, IsDescendantOf DOMHTMLFontElement o) => DOMHTMLFontElementK o
+data DOMHTMLFontElementColorPropertyInfo
+data DOMHTMLFontElementFacePropertyInfo
+data DOMHTMLFontElementSizePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLFormElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLFormElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLFormElement.hs
@@ -0,0 +1,1006 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLFormElement
+    ( 
+
+-- * Exported types
+    DOMHTMLFormElement(..)                  ,
+    DOMHTMLFormElementK                     ,
+    toDOMHTMLFormElement                    ,
+    noDOMHTMLFormElement                    ,
+
+
+ -- * Methods
+-- ** dOMHTMLFormElementGetAcceptCharset
+    dOMHTMLFormElementGetAcceptCharset      ,
+
+
+-- ** dOMHTMLFormElementGetAction
+    dOMHTMLFormElementGetAction             ,
+
+
+-- ** dOMHTMLFormElementGetElements
+    dOMHTMLFormElementGetElements           ,
+
+
+-- ** dOMHTMLFormElementGetEncoding
+    dOMHTMLFormElementGetEncoding           ,
+
+
+-- ** dOMHTMLFormElementGetEnctype
+    dOMHTMLFormElementGetEnctype            ,
+
+
+-- ** dOMHTMLFormElementGetLength
+    dOMHTMLFormElementGetLength             ,
+
+
+-- ** dOMHTMLFormElementGetMethod
+    dOMHTMLFormElementGetMethod             ,
+
+
+-- ** dOMHTMLFormElementGetName
+    dOMHTMLFormElementGetName               ,
+
+
+-- ** dOMHTMLFormElementGetTarget
+    dOMHTMLFormElementGetTarget             ,
+
+
+-- ** dOMHTMLFormElementReset
+    dOMHTMLFormElementReset                 ,
+
+
+-- ** dOMHTMLFormElementSetAcceptCharset
+    dOMHTMLFormElementSetAcceptCharset      ,
+
+
+-- ** dOMHTMLFormElementSetAction
+    dOMHTMLFormElementSetAction             ,
+
+
+-- ** dOMHTMLFormElementSetEncoding
+    dOMHTMLFormElementSetEncoding           ,
+
+
+-- ** dOMHTMLFormElementSetEnctype
+    dOMHTMLFormElementSetEnctype            ,
+
+
+-- ** dOMHTMLFormElementSetMethod
+    dOMHTMLFormElementSetMethod             ,
+
+
+-- ** dOMHTMLFormElementSetName
+    dOMHTMLFormElementSetName               ,
+
+
+-- ** dOMHTMLFormElementSetTarget
+    dOMHTMLFormElementSetTarget             ,
+
+
+-- ** dOMHTMLFormElementSubmit
+    dOMHTMLFormElementSubmit                ,
+
+
+
+
+ -- * Properties
+-- ** AcceptCharset
+    DOMHTMLFormElementAcceptCharsetPropertyInfo,
+    constructDOMHTMLFormElementAcceptCharset,
+    getDOMHTMLFormElementAcceptCharset      ,
+    setDOMHTMLFormElementAcceptCharset      ,
+
+
+-- ** Action
+    DOMHTMLFormElementActionPropertyInfo    ,
+    constructDOMHTMLFormElementAction       ,
+    getDOMHTMLFormElementAction             ,
+    setDOMHTMLFormElementAction             ,
+
+
+-- ** Autocapitalize
+    DOMHTMLFormElementAutocapitalizePropertyInfo,
+    constructDOMHTMLFormElementAutocapitalize,
+    getDOMHTMLFormElementAutocapitalize     ,
+    setDOMHTMLFormElementAutocapitalize     ,
+
+
+-- ** Autocomplete
+    DOMHTMLFormElementAutocompletePropertyInfo,
+    constructDOMHTMLFormElementAutocomplete ,
+    getDOMHTMLFormElementAutocomplete       ,
+    setDOMHTMLFormElementAutocomplete       ,
+
+
+-- ** Autocorrect
+    DOMHTMLFormElementAutocorrectPropertyInfo,
+    constructDOMHTMLFormElementAutocorrect  ,
+    getDOMHTMLFormElementAutocorrect        ,
+    setDOMHTMLFormElementAutocorrect        ,
+
+
+-- ** Elements
+    DOMHTMLFormElementElementsPropertyInfo  ,
+    getDOMHTMLFormElementElements           ,
+
+
+-- ** Encoding
+    DOMHTMLFormElementEncodingPropertyInfo  ,
+    constructDOMHTMLFormElementEncoding     ,
+    getDOMHTMLFormElementEncoding           ,
+    setDOMHTMLFormElementEncoding           ,
+
+
+-- ** Enctype
+    DOMHTMLFormElementEnctypePropertyInfo   ,
+    constructDOMHTMLFormElementEnctype      ,
+    getDOMHTMLFormElementEnctype            ,
+    setDOMHTMLFormElementEnctype            ,
+
+
+-- ** Length
+    DOMHTMLFormElementLengthPropertyInfo    ,
+    getDOMHTMLFormElementLength             ,
+
+
+-- ** Method
+    DOMHTMLFormElementMethodPropertyInfo    ,
+    constructDOMHTMLFormElementMethod       ,
+    getDOMHTMLFormElementMethod             ,
+    setDOMHTMLFormElementMethod             ,
+
+
+-- ** Name
+    DOMHTMLFormElementNamePropertyInfo      ,
+    constructDOMHTMLFormElementName         ,
+    getDOMHTMLFormElementName               ,
+    setDOMHTMLFormElementName               ,
+
+
+-- ** NoValidate
+    DOMHTMLFormElementNoValidatePropertyInfo,
+    constructDOMHTMLFormElementNoValidate   ,
+    getDOMHTMLFormElementNoValidate         ,
+    setDOMHTMLFormElementNoValidate         ,
+
+
+-- ** Target
+    DOMHTMLFormElementTargetPropertyInfo    ,
+    constructDOMHTMLFormElementTarget       ,
+    getDOMHTMLFormElementTarget             ,
+    setDOMHTMLFormElementTarget             ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLFormElement = DOMHTMLFormElement (ForeignPtr DOMHTMLFormElement)
+foreign import ccall "webkit_dom_html_form_element_get_type"
+    c_webkit_dom_html_form_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLFormElement = DOMHTMLFormElementParentTypes
+type DOMHTMLFormElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLFormElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_form_element_get_type
+    
+
+class GObject o => DOMHTMLFormElementK o
+instance (GObject o, IsDescendantOf DOMHTMLFormElement o) => DOMHTMLFormElementK o
+
+toDOMHTMLFormElement :: DOMHTMLFormElementK o => o -> IO DOMHTMLFormElement
+toDOMHTMLFormElement = unsafeCastTo DOMHTMLFormElement
+
+noDOMHTMLFormElement :: Maybe DOMHTMLFormElement
+noDOMHTMLFormElement = Nothing
+
+-- VVV Prop "accept-charset"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFormElementAcceptCharset :: (MonadIO m, DOMHTMLFormElementK o) => o -> m T.Text
+getDOMHTMLFormElementAcceptCharset obj = liftIO $ getObjectPropertyString obj "accept-charset"
+
+setDOMHTMLFormElementAcceptCharset :: (MonadIO m, DOMHTMLFormElementK o) => o -> T.Text -> m ()
+setDOMHTMLFormElementAcceptCharset obj val = liftIO $ setObjectPropertyString obj "accept-charset" val
+
+constructDOMHTMLFormElementAcceptCharset :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFormElementAcceptCharset val = constructObjectPropertyString "accept-charset" val
+
+data DOMHTMLFormElementAcceptCharsetPropertyInfo
+instance AttrInfo DOMHTMLFormElementAcceptCharsetPropertyInfo where
+    type AttrAllowedOps DOMHTMLFormElementAcceptCharsetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFormElementAcceptCharsetPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFormElementAcceptCharsetPropertyInfo = DOMHTMLFormElementK
+    type AttrGetType DOMHTMLFormElementAcceptCharsetPropertyInfo = T.Text
+    type AttrLabel DOMHTMLFormElementAcceptCharsetPropertyInfo = "DOMHTMLFormElement::accept-charset"
+    attrGet _ = getDOMHTMLFormElementAcceptCharset
+    attrSet _ = setDOMHTMLFormElementAcceptCharset
+    attrConstruct _ = constructDOMHTMLFormElementAcceptCharset
+
+-- VVV Prop "action"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFormElementAction :: (MonadIO m, DOMHTMLFormElementK o) => o -> m T.Text
+getDOMHTMLFormElementAction obj = liftIO $ getObjectPropertyString obj "action"
+
+setDOMHTMLFormElementAction :: (MonadIO m, DOMHTMLFormElementK o) => o -> T.Text -> m ()
+setDOMHTMLFormElementAction obj val = liftIO $ setObjectPropertyString obj "action" val
+
+constructDOMHTMLFormElementAction :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFormElementAction val = constructObjectPropertyString "action" val
+
+data DOMHTMLFormElementActionPropertyInfo
+instance AttrInfo DOMHTMLFormElementActionPropertyInfo where
+    type AttrAllowedOps DOMHTMLFormElementActionPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFormElementActionPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFormElementActionPropertyInfo = DOMHTMLFormElementK
+    type AttrGetType DOMHTMLFormElementActionPropertyInfo = T.Text
+    type AttrLabel DOMHTMLFormElementActionPropertyInfo = "DOMHTMLFormElement::action"
+    attrGet _ = getDOMHTMLFormElementAction
+    attrSet _ = setDOMHTMLFormElementAction
+    attrConstruct _ = constructDOMHTMLFormElementAction
+
+-- VVV Prop "autocapitalize"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFormElementAutocapitalize :: (MonadIO m, DOMHTMLFormElementK o) => o -> m T.Text
+getDOMHTMLFormElementAutocapitalize obj = liftIO $ getObjectPropertyString obj "autocapitalize"
+
+setDOMHTMLFormElementAutocapitalize :: (MonadIO m, DOMHTMLFormElementK o) => o -> T.Text -> m ()
+setDOMHTMLFormElementAutocapitalize obj val = liftIO $ setObjectPropertyString obj "autocapitalize" val
+
+constructDOMHTMLFormElementAutocapitalize :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFormElementAutocapitalize val = constructObjectPropertyString "autocapitalize" val
+
+data DOMHTMLFormElementAutocapitalizePropertyInfo
+instance AttrInfo DOMHTMLFormElementAutocapitalizePropertyInfo where
+    type AttrAllowedOps DOMHTMLFormElementAutocapitalizePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFormElementAutocapitalizePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFormElementAutocapitalizePropertyInfo = DOMHTMLFormElementK
+    type AttrGetType DOMHTMLFormElementAutocapitalizePropertyInfo = T.Text
+    type AttrLabel DOMHTMLFormElementAutocapitalizePropertyInfo = "DOMHTMLFormElement::autocapitalize"
+    attrGet _ = getDOMHTMLFormElementAutocapitalize
+    attrSet _ = setDOMHTMLFormElementAutocapitalize
+    attrConstruct _ = constructDOMHTMLFormElementAutocapitalize
+
+-- VVV Prop "autocomplete"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFormElementAutocomplete :: (MonadIO m, DOMHTMLFormElementK o) => o -> m T.Text
+getDOMHTMLFormElementAutocomplete obj = liftIO $ getObjectPropertyString obj "autocomplete"
+
+setDOMHTMLFormElementAutocomplete :: (MonadIO m, DOMHTMLFormElementK o) => o -> T.Text -> m ()
+setDOMHTMLFormElementAutocomplete obj val = liftIO $ setObjectPropertyString obj "autocomplete" val
+
+constructDOMHTMLFormElementAutocomplete :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFormElementAutocomplete val = constructObjectPropertyString "autocomplete" val
+
+data DOMHTMLFormElementAutocompletePropertyInfo
+instance AttrInfo DOMHTMLFormElementAutocompletePropertyInfo where
+    type AttrAllowedOps DOMHTMLFormElementAutocompletePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFormElementAutocompletePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFormElementAutocompletePropertyInfo = DOMHTMLFormElementK
+    type AttrGetType DOMHTMLFormElementAutocompletePropertyInfo = T.Text
+    type AttrLabel DOMHTMLFormElementAutocompletePropertyInfo = "DOMHTMLFormElement::autocomplete"
+    attrGet _ = getDOMHTMLFormElementAutocomplete
+    attrSet _ = setDOMHTMLFormElementAutocomplete
+    attrConstruct _ = constructDOMHTMLFormElementAutocomplete
+
+-- VVV Prop "autocorrect"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFormElementAutocorrect :: (MonadIO m, DOMHTMLFormElementK o) => o -> m Bool
+getDOMHTMLFormElementAutocorrect obj = liftIO $ getObjectPropertyBool obj "autocorrect"
+
+setDOMHTMLFormElementAutocorrect :: (MonadIO m, DOMHTMLFormElementK o) => o -> Bool -> m ()
+setDOMHTMLFormElementAutocorrect obj val = liftIO $ setObjectPropertyBool obj "autocorrect" val
+
+constructDOMHTMLFormElementAutocorrect :: Bool -> IO ([Char], GValue)
+constructDOMHTMLFormElementAutocorrect val = constructObjectPropertyBool "autocorrect" val
+
+data DOMHTMLFormElementAutocorrectPropertyInfo
+instance AttrInfo DOMHTMLFormElementAutocorrectPropertyInfo where
+    type AttrAllowedOps DOMHTMLFormElementAutocorrectPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFormElementAutocorrectPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLFormElementAutocorrectPropertyInfo = DOMHTMLFormElementK
+    type AttrGetType DOMHTMLFormElementAutocorrectPropertyInfo = Bool
+    type AttrLabel DOMHTMLFormElementAutocorrectPropertyInfo = "DOMHTMLFormElement::autocorrect"
+    attrGet _ = getDOMHTMLFormElementAutocorrect
+    attrSet _ = setDOMHTMLFormElementAutocorrect
+    attrConstruct _ = constructDOMHTMLFormElementAutocorrect
+
+-- VVV Prop "elements"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLFormElementElements :: (MonadIO m, DOMHTMLFormElementK o) => o -> m DOMHTMLCollection
+getDOMHTMLFormElementElements obj = liftIO $ getObjectPropertyObject obj "elements" DOMHTMLCollection
+
+data DOMHTMLFormElementElementsPropertyInfo
+instance AttrInfo DOMHTMLFormElementElementsPropertyInfo where
+    type AttrAllowedOps DOMHTMLFormElementElementsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFormElementElementsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLFormElementElementsPropertyInfo = DOMHTMLFormElementK
+    type AttrGetType DOMHTMLFormElementElementsPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMHTMLFormElementElementsPropertyInfo = "DOMHTMLFormElement::elements"
+    attrGet _ = getDOMHTMLFormElementElements
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "encoding"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFormElementEncoding :: (MonadIO m, DOMHTMLFormElementK o) => o -> m T.Text
+getDOMHTMLFormElementEncoding obj = liftIO $ getObjectPropertyString obj "encoding"
+
+setDOMHTMLFormElementEncoding :: (MonadIO m, DOMHTMLFormElementK o) => o -> T.Text -> m ()
+setDOMHTMLFormElementEncoding obj val = liftIO $ setObjectPropertyString obj "encoding" val
+
+constructDOMHTMLFormElementEncoding :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFormElementEncoding val = constructObjectPropertyString "encoding" val
+
+data DOMHTMLFormElementEncodingPropertyInfo
+instance AttrInfo DOMHTMLFormElementEncodingPropertyInfo where
+    type AttrAllowedOps DOMHTMLFormElementEncodingPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFormElementEncodingPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFormElementEncodingPropertyInfo = DOMHTMLFormElementK
+    type AttrGetType DOMHTMLFormElementEncodingPropertyInfo = T.Text
+    type AttrLabel DOMHTMLFormElementEncodingPropertyInfo = "DOMHTMLFormElement::encoding"
+    attrGet _ = getDOMHTMLFormElementEncoding
+    attrSet _ = setDOMHTMLFormElementEncoding
+    attrConstruct _ = constructDOMHTMLFormElementEncoding
+
+-- VVV Prop "enctype"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFormElementEnctype :: (MonadIO m, DOMHTMLFormElementK o) => o -> m T.Text
+getDOMHTMLFormElementEnctype obj = liftIO $ getObjectPropertyString obj "enctype"
+
+setDOMHTMLFormElementEnctype :: (MonadIO m, DOMHTMLFormElementK o) => o -> T.Text -> m ()
+setDOMHTMLFormElementEnctype obj val = liftIO $ setObjectPropertyString obj "enctype" val
+
+constructDOMHTMLFormElementEnctype :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFormElementEnctype val = constructObjectPropertyString "enctype" val
+
+data DOMHTMLFormElementEnctypePropertyInfo
+instance AttrInfo DOMHTMLFormElementEnctypePropertyInfo where
+    type AttrAllowedOps DOMHTMLFormElementEnctypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFormElementEnctypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFormElementEnctypePropertyInfo = DOMHTMLFormElementK
+    type AttrGetType DOMHTMLFormElementEnctypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLFormElementEnctypePropertyInfo = "DOMHTMLFormElement::enctype"
+    attrGet _ = getDOMHTMLFormElementEnctype
+    attrSet _ = setDOMHTMLFormElementEnctype
+    attrConstruct _ = constructDOMHTMLFormElementEnctype
+
+-- VVV Prop "length"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLFormElementLength :: (MonadIO m, DOMHTMLFormElementK o) => o -> m Int64
+getDOMHTMLFormElementLength obj = liftIO $ getObjectPropertyInt64 obj "length"
+
+data DOMHTMLFormElementLengthPropertyInfo
+instance AttrInfo DOMHTMLFormElementLengthPropertyInfo where
+    type AttrAllowedOps DOMHTMLFormElementLengthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFormElementLengthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLFormElementLengthPropertyInfo = DOMHTMLFormElementK
+    type AttrGetType DOMHTMLFormElementLengthPropertyInfo = Int64
+    type AttrLabel DOMHTMLFormElementLengthPropertyInfo = "DOMHTMLFormElement::length"
+    attrGet _ = getDOMHTMLFormElementLength
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "method"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFormElementMethod :: (MonadIO m, DOMHTMLFormElementK o) => o -> m T.Text
+getDOMHTMLFormElementMethod obj = liftIO $ getObjectPropertyString obj "method"
+
+setDOMHTMLFormElementMethod :: (MonadIO m, DOMHTMLFormElementK o) => o -> T.Text -> m ()
+setDOMHTMLFormElementMethod obj val = liftIO $ setObjectPropertyString obj "method" val
+
+constructDOMHTMLFormElementMethod :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFormElementMethod val = constructObjectPropertyString "method" val
+
+data DOMHTMLFormElementMethodPropertyInfo
+instance AttrInfo DOMHTMLFormElementMethodPropertyInfo where
+    type AttrAllowedOps DOMHTMLFormElementMethodPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFormElementMethodPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFormElementMethodPropertyInfo = DOMHTMLFormElementK
+    type AttrGetType DOMHTMLFormElementMethodPropertyInfo = T.Text
+    type AttrLabel DOMHTMLFormElementMethodPropertyInfo = "DOMHTMLFormElement::method"
+    attrGet _ = getDOMHTMLFormElementMethod
+    attrSet _ = setDOMHTMLFormElementMethod
+    attrConstruct _ = constructDOMHTMLFormElementMethod
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFormElementName :: (MonadIO m, DOMHTMLFormElementK o) => o -> m T.Text
+getDOMHTMLFormElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLFormElementName :: (MonadIO m, DOMHTMLFormElementK o) => o -> T.Text -> m ()
+setDOMHTMLFormElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLFormElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFormElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLFormElementNamePropertyInfo
+instance AttrInfo DOMHTMLFormElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLFormElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFormElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFormElementNamePropertyInfo = DOMHTMLFormElementK
+    type AttrGetType DOMHTMLFormElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLFormElementNamePropertyInfo = "DOMHTMLFormElement::name"
+    attrGet _ = getDOMHTMLFormElementName
+    attrSet _ = setDOMHTMLFormElementName
+    attrConstruct _ = constructDOMHTMLFormElementName
+
+-- VVV Prop "no-validate"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFormElementNoValidate :: (MonadIO m, DOMHTMLFormElementK o) => o -> m Bool
+getDOMHTMLFormElementNoValidate obj = liftIO $ getObjectPropertyBool obj "no-validate"
+
+setDOMHTMLFormElementNoValidate :: (MonadIO m, DOMHTMLFormElementK o) => o -> Bool -> m ()
+setDOMHTMLFormElementNoValidate obj val = liftIO $ setObjectPropertyBool obj "no-validate" val
+
+constructDOMHTMLFormElementNoValidate :: Bool -> IO ([Char], GValue)
+constructDOMHTMLFormElementNoValidate val = constructObjectPropertyBool "no-validate" val
+
+data DOMHTMLFormElementNoValidatePropertyInfo
+instance AttrInfo DOMHTMLFormElementNoValidatePropertyInfo where
+    type AttrAllowedOps DOMHTMLFormElementNoValidatePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFormElementNoValidatePropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLFormElementNoValidatePropertyInfo = DOMHTMLFormElementK
+    type AttrGetType DOMHTMLFormElementNoValidatePropertyInfo = Bool
+    type AttrLabel DOMHTMLFormElementNoValidatePropertyInfo = "DOMHTMLFormElement::no-validate"
+    attrGet _ = getDOMHTMLFormElementNoValidate
+    attrSet _ = setDOMHTMLFormElementNoValidate
+    attrConstruct _ = constructDOMHTMLFormElementNoValidate
+
+-- VVV Prop "target"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFormElementTarget :: (MonadIO m, DOMHTMLFormElementK o) => o -> m T.Text
+getDOMHTMLFormElementTarget obj = liftIO $ getObjectPropertyString obj "target"
+
+setDOMHTMLFormElementTarget :: (MonadIO m, DOMHTMLFormElementK o) => o -> T.Text -> m ()
+setDOMHTMLFormElementTarget obj val = liftIO $ setObjectPropertyString obj "target" val
+
+constructDOMHTMLFormElementTarget :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFormElementTarget val = constructObjectPropertyString "target" val
+
+data DOMHTMLFormElementTargetPropertyInfo
+instance AttrInfo DOMHTMLFormElementTargetPropertyInfo where
+    type AttrAllowedOps DOMHTMLFormElementTargetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFormElementTargetPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFormElementTargetPropertyInfo = DOMHTMLFormElementK
+    type AttrGetType DOMHTMLFormElementTargetPropertyInfo = T.Text
+    type AttrLabel DOMHTMLFormElementTargetPropertyInfo = "DOMHTMLFormElement::target"
+    attrGet _ = getDOMHTMLFormElementTarget
+    attrSet _ = setDOMHTMLFormElementTarget
+    attrConstruct _ = constructDOMHTMLFormElementTarget
+
+type instance AttributeList DOMHTMLFormElement = DOMHTMLFormElementAttributeList
+type DOMHTMLFormElementAttributeList = ('[ '("accept-charset", DOMHTMLFormElementAcceptCharsetPropertyInfo), '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("action", DOMHTMLFormElementActionPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("autocapitalize", DOMHTMLFormElementAutocapitalizePropertyInfo), '("autocomplete", DOMHTMLFormElementAutocompletePropertyInfo), '("autocorrect", DOMHTMLFormElementAutocorrectPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("elements", DOMHTMLFormElementElementsPropertyInfo), '("encoding", DOMHTMLFormElementEncodingPropertyInfo), '("enctype", DOMHTMLFormElementEnctypePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("length", DOMHTMLFormElementLengthPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("method", DOMHTMLFormElementMethodPropertyInfo), '("name", DOMHTMLFormElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("no-validate", DOMHTMLFormElementNoValidatePropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("target", DOMHTMLFormElementTargetPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLFormElement = DOMHTMLFormElementSignalList
+type DOMHTMLFormElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLFormElement::get_accept_charset
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_get_accept_charset" webkit_dom_html_form_element_get_accept_charset :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    IO CString
+
+
+dOMHTMLFormElementGetAcceptCharset ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFormElementGetAcceptCharset _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_form_element_get_accept_charset _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_form_element_get_accept_charset" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFormElement::get_action
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_get_action" webkit_dom_html_form_element_get_action :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    IO CString
+
+
+dOMHTMLFormElementGetAction ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFormElementGetAction _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_form_element_get_action _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_form_element_get_action" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFormElement::get_elements
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_get_elements" webkit_dom_html_form_element_get_elements :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    IO (Ptr DOMHTMLCollection)
+
+
+dOMHTMLFormElementGetElements ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLCollection
+dOMHTMLFormElementGetElements _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_form_element_get_elements _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_form_element_get_elements" result
+    result' <- (wrapObject DOMHTMLCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFormElement::get_encoding
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_get_encoding" webkit_dom_html_form_element_get_encoding :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    IO CString
+
+
+dOMHTMLFormElementGetEncoding ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFormElementGetEncoding _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_form_element_get_encoding _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_form_element_get_encoding" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFormElement::get_enctype
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_get_enctype" webkit_dom_html_form_element_get_enctype :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    IO CString
+
+
+dOMHTMLFormElementGetEnctype ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFormElementGetEnctype _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_form_element_get_enctype _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_form_element_get_enctype" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFormElement::get_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_get_length" webkit_dom_html_form_element_get_length :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    IO Int64
+
+
+dOMHTMLFormElementGetLength ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLFormElementGetLength _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_form_element_get_length _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLFormElement::get_method
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_get_method" webkit_dom_html_form_element_get_method :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    IO CString
+
+
+dOMHTMLFormElementGetMethod ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFormElementGetMethod _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_form_element_get_method _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_form_element_get_method" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFormElement::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_get_name" webkit_dom_html_form_element_get_name :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    IO CString
+
+
+dOMHTMLFormElementGetName ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFormElementGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_form_element_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_form_element_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFormElement::get_target
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_get_target" webkit_dom_html_form_element_get_target :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    IO CString
+
+
+dOMHTMLFormElementGetTarget ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFormElementGetTarget _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_form_element_get_target _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_form_element_get_target" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFormElement::reset
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_reset" webkit_dom_html_form_element_reset :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    IO ()
+
+
+dOMHTMLFormElementReset ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMHTMLFormElementReset _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_form_element_reset _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLFormElement::set_accept_charset
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_set_accept_charset" webkit_dom_html_form_element_set_accept_charset :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFormElementSetAcceptCharset ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFormElementSetAcceptCharset _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_form_element_set_accept_charset _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFormElement::set_action
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_set_action" webkit_dom_html_form_element_set_action :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFormElementSetAction ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFormElementSetAction _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_form_element_set_action _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFormElement::set_encoding
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_set_encoding" webkit_dom_html_form_element_set_encoding :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFormElementSetEncoding ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFormElementSetEncoding _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_form_element_set_encoding _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFormElement::set_enctype
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_set_enctype" webkit_dom_html_form_element_set_enctype :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFormElementSetEnctype ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFormElementSetEnctype _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_form_element_set_enctype _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFormElement::set_method
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_set_method" webkit_dom_html_form_element_set_method :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFormElementSetMethod ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFormElementSetMethod _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_form_element_set_method _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFormElement::set_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_set_name" webkit_dom_html_form_element_set_name :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFormElementSetName ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFormElementSetName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_form_element_set_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFormElement::set_target
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_set_target" webkit_dom_html_form_element_set_target :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFormElementSetTarget ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFormElementSetTarget _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_form_element_set_target _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFormElement::submit
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFormElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_form_element_submit" webkit_dom_html_form_element_submit :: 
+    Ptr DOMHTMLFormElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+    IO ()
+
+
+dOMHTMLFormElementSubmit ::
+    (MonadIO m, DOMHTMLFormElementK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMHTMLFormElementSubmit _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_form_element_submit _obj'
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLFormElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLFormElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLFormElement.hs-boot
@@ -0,0 +1,26 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLFormElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLFormElement = DOMHTMLFormElement (ForeignPtr DOMHTMLFormElement)
+instance GObject DOMHTMLFormElement where
+class GObject o => DOMHTMLFormElementK o
+instance (GObject o, IsDescendantOf DOMHTMLFormElement o) => DOMHTMLFormElementK o
+data DOMHTMLFormElementAcceptCharsetPropertyInfo
+data DOMHTMLFormElementActionPropertyInfo
+data DOMHTMLFormElementAutocapitalizePropertyInfo
+data DOMHTMLFormElementAutocompletePropertyInfo
+data DOMHTMLFormElementAutocorrectPropertyInfo
+data DOMHTMLFormElementElementsPropertyInfo
+data DOMHTMLFormElementEncodingPropertyInfo
+data DOMHTMLFormElementEnctypePropertyInfo
+data DOMHTMLFormElementLengthPropertyInfo
+data DOMHTMLFormElementMethodPropertyInfo
+data DOMHTMLFormElementNamePropertyInfo
+data DOMHTMLFormElementNoValidatePropertyInfo
+data DOMHTMLFormElementTargetPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLFrameElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLFrameElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLFrameElement.hs
@@ -0,0 +1,1021 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLFrameElement
+    ( 
+
+-- * Exported types
+    DOMHTMLFrameElement(..)                 ,
+    DOMHTMLFrameElementK                    ,
+    toDOMHTMLFrameElement                   ,
+    noDOMHTMLFrameElement                   ,
+
+
+ -- * Methods
+-- ** dOMHTMLFrameElementGetContentDocument
+    dOMHTMLFrameElementGetContentDocument   ,
+
+
+-- ** dOMHTMLFrameElementGetContentWindow
+    dOMHTMLFrameElementGetContentWindow     ,
+
+
+-- ** dOMHTMLFrameElementGetFrameBorder
+    dOMHTMLFrameElementGetFrameBorder       ,
+
+
+-- ** dOMHTMLFrameElementGetHeight
+    dOMHTMLFrameElementGetHeight            ,
+
+
+-- ** dOMHTMLFrameElementGetLongDesc
+    dOMHTMLFrameElementGetLongDesc          ,
+
+
+-- ** dOMHTMLFrameElementGetMarginHeight
+    dOMHTMLFrameElementGetMarginHeight      ,
+
+
+-- ** dOMHTMLFrameElementGetMarginWidth
+    dOMHTMLFrameElementGetMarginWidth       ,
+
+
+-- ** dOMHTMLFrameElementGetName
+    dOMHTMLFrameElementGetName              ,
+
+
+-- ** dOMHTMLFrameElementGetNoResize
+    dOMHTMLFrameElementGetNoResize          ,
+
+
+-- ** dOMHTMLFrameElementGetScrolling
+    dOMHTMLFrameElementGetScrolling         ,
+
+
+-- ** dOMHTMLFrameElementGetSrc
+    dOMHTMLFrameElementGetSrc               ,
+
+
+-- ** dOMHTMLFrameElementGetWidth
+    dOMHTMLFrameElementGetWidth             ,
+
+
+-- ** dOMHTMLFrameElementSetFrameBorder
+    dOMHTMLFrameElementSetFrameBorder       ,
+
+
+-- ** dOMHTMLFrameElementSetLongDesc
+    dOMHTMLFrameElementSetLongDesc          ,
+
+
+-- ** dOMHTMLFrameElementSetMarginHeight
+    dOMHTMLFrameElementSetMarginHeight      ,
+
+
+-- ** dOMHTMLFrameElementSetMarginWidth
+    dOMHTMLFrameElementSetMarginWidth       ,
+
+
+-- ** dOMHTMLFrameElementSetName
+    dOMHTMLFrameElementSetName              ,
+
+
+-- ** dOMHTMLFrameElementSetNoResize
+    dOMHTMLFrameElementSetNoResize          ,
+
+
+-- ** dOMHTMLFrameElementSetScrolling
+    dOMHTMLFrameElementSetScrolling         ,
+
+
+-- ** dOMHTMLFrameElementSetSrc
+    dOMHTMLFrameElementSetSrc               ,
+
+
+
+
+ -- * Properties
+-- ** ContentDocument
+    DOMHTMLFrameElementContentDocumentPropertyInfo,
+    getDOMHTMLFrameElementContentDocument   ,
+
+
+-- ** ContentWindow
+    DOMHTMLFrameElementContentWindowPropertyInfo,
+    getDOMHTMLFrameElementContentWindow     ,
+
+
+-- ** FrameBorder
+    DOMHTMLFrameElementFrameBorderPropertyInfo,
+    constructDOMHTMLFrameElementFrameBorder ,
+    getDOMHTMLFrameElementFrameBorder       ,
+    setDOMHTMLFrameElementFrameBorder       ,
+
+
+-- ** Height
+    DOMHTMLFrameElementHeightPropertyInfo   ,
+    getDOMHTMLFrameElementHeight            ,
+
+
+-- ** LongDesc
+    DOMHTMLFrameElementLongDescPropertyInfo ,
+    constructDOMHTMLFrameElementLongDesc    ,
+    getDOMHTMLFrameElementLongDesc          ,
+    setDOMHTMLFrameElementLongDesc          ,
+
+
+-- ** MarginHeight
+    DOMHTMLFrameElementMarginHeightPropertyInfo,
+    constructDOMHTMLFrameElementMarginHeight,
+    getDOMHTMLFrameElementMarginHeight      ,
+    setDOMHTMLFrameElementMarginHeight      ,
+
+
+-- ** MarginWidth
+    DOMHTMLFrameElementMarginWidthPropertyInfo,
+    constructDOMHTMLFrameElementMarginWidth ,
+    getDOMHTMLFrameElementMarginWidth       ,
+    setDOMHTMLFrameElementMarginWidth       ,
+
+
+-- ** Name
+    DOMHTMLFrameElementNamePropertyInfo     ,
+    constructDOMHTMLFrameElementName        ,
+    getDOMHTMLFrameElementName              ,
+    setDOMHTMLFrameElementName              ,
+
+
+-- ** NoResize
+    DOMHTMLFrameElementNoResizePropertyInfo ,
+    constructDOMHTMLFrameElementNoResize    ,
+    getDOMHTMLFrameElementNoResize          ,
+    setDOMHTMLFrameElementNoResize          ,
+
+
+-- ** Scrolling
+    DOMHTMLFrameElementScrollingPropertyInfo,
+    constructDOMHTMLFrameElementScrolling   ,
+    getDOMHTMLFrameElementScrolling         ,
+    setDOMHTMLFrameElementScrolling         ,
+
+
+-- ** Src
+    DOMHTMLFrameElementSrcPropertyInfo      ,
+    constructDOMHTMLFrameElementSrc         ,
+    getDOMHTMLFrameElementSrc               ,
+    setDOMHTMLFrameElementSrc               ,
+
+
+-- ** Width
+    DOMHTMLFrameElementWidthPropertyInfo    ,
+    getDOMHTMLFrameElementWidth             ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLFrameElement = DOMHTMLFrameElement (ForeignPtr DOMHTMLFrameElement)
+foreign import ccall "webkit_dom_html_frame_element_get_type"
+    c_webkit_dom_html_frame_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLFrameElement = DOMHTMLFrameElementParentTypes
+type DOMHTMLFrameElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLFrameElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_frame_element_get_type
+    
+
+class GObject o => DOMHTMLFrameElementK o
+instance (GObject o, IsDescendantOf DOMHTMLFrameElement o) => DOMHTMLFrameElementK o
+
+toDOMHTMLFrameElement :: DOMHTMLFrameElementK o => o -> IO DOMHTMLFrameElement
+toDOMHTMLFrameElement = unsafeCastTo DOMHTMLFrameElement
+
+noDOMHTMLFrameElement :: Maybe DOMHTMLFrameElement
+noDOMHTMLFrameElement = Nothing
+
+-- VVV Prop "content-document"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDocument"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLFrameElementContentDocument :: (MonadIO m, DOMHTMLFrameElementK o) => o -> m DOMDocument
+getDOMHTMLFrameElementContentDocument obj = liftIO $ getObjectPropertyObject obj "content-document" DOMDocument
+
+data DOMHTMLFrameElementContentDocumentPropertyInfo
+instance AttrInfo DOMHTMLFrameElementContentDocumentPropertyInfo where
+    type AttrAllowedOps DOMHTMLFrameElementContentDocumentPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFrameElementContentDocumentPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLFrameElementContentDocumentPropertyInfo = DOMHTMLFrameElementK
+    type AttrGetType DOMHTMLFrameElementContentDocumentPropertyInfo = DOMDocument
+    type AttrLabel DOMHTMLFrameElementContentDocumentPropertyInfo = "DOMHTMLFrameElement::content-document"
+    attrGet _ = getDOMHTMLFrameElementContentDocument
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "content-window"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDOMWindow"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLFrameElementContentWindow :: (MonadIO m, DOMHTMLFrameElementK o) => o -> m DOMDOMWindow
+getDOMHTMLFrameElementContentWindow obj = liftIO $ getObjectPropertyObject obj "content-window" DOMDOMWindow
+
+data DOMHTMLFrameElementContentWindowPropertyInfo
+instance AttrInfo DOMHTMLFrameElementContentWindowPropertyInfo where
+    type AttrAllowedOps DOMHTMLFrameElementContentWindowPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFrameElementContentWindowPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLFrameElementContentWindowPropertyInfo = DOMHTMLFrameElementK
+    type AttrGetType DOMHTMLFrameElementContentWindowPropertyInfo = DOMDOMWindow
+    type AttrLabel DOMHTMLFrameElementContentWindowPropertyInfo = "DOMHTMLFrameElement::content-window"
+    attrGet _ = getDOMHTMLFrameElementContentWindow
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "frame-border"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFrameElementFrameBorder :: (MonadIO m, DOMHTMLFrameElementK o) => o -> m T.Text
+getDOMHTMLFrameElementFrameBorder obj = liftIO $ getObjectPropertyString obj "frame-border"
+
+setDOMHTMLFrameElementFrameBorder :: (MonadIO m, DOMHTMLFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLFrameElementFrameBorder obj val = liftIO $ setObjectPropertyString obj "frame-border" val
+
+constructDOMHTMLFrameElementFrameBorder :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFrameElementFrameBorder val = constructObjectPropertyString "frame-border" val
+
+data DOMHTMLFrameElementFrameBorderPropertyInfo
+instance AttrInfo DOMHTMLFrameElementFrameBorderPropertyInfo where
+    type AttrAllowedOps DOMHTMLFrameElementFrameBorderPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFrameElementFrameBorderPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFrameElementFrameBorderPropertyInfo = DOMHTMLFrameElementK
+    type AttrGetType DOMHTMLFrameElementFrameBorderPropertyInfo = T.Text
+    type AttrLabel DOMHTMLFrameElementFrameBorderPropertyInfo = "DOMHTMLFrameElement::frame-border"
+    attrGet _ = getDOMHTMLFrameElementFrameBorder
+    attrSet _ = setDOMHTMLFrameElementFrameBorder
+    attrConstruct _ = constructDOMHTMLFrameElementFrameBorder
+
+-- VVV Prop "height"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLFrameElementHeight :: (MonadIO m, DOMHTMLFrameElementK o) => o -> m Int64
+getDOMHTMLFrameElementHeight obj = liftIO $ getObjectPropertyInt64 obj "height"
+
+data DOMHTMLFrameElementHeightPropertyInfo
+instance AttrInfo DOMHTMLFrameElementHeightPropertyInfo where
+    type AttrAllowedOps DOMHTMLFrameElementHeightPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFrameElementHeightPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLFrameElementHeightPropertyInfo = DOMHTMLFrameElementK
+    type AttrGetType DOMHTMLFrameElementHeightPropertyInfo = Int64
+    type AttrLabel DOMHTMLFrameElementHeightPropertyInfo = "DOMHTMLFrameElement::height"
+    attrGet _ = getDOMHTMLFrameElementHeight
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "long-desc"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFrameElementLongDesc :: (MonadIO m, DOMHTMLFrameElementK o) => o -> m T.Text
+getDOMHTMLFrameElementLongDesc obj = liftIO $ getObjectPropertyString obj "long-desc"
+
+setDOMHTMLFrameElementLongDesc :: (MonadIO m, DOMHTMLFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLFrameElementLongDesc obj val = liftIO $ setObjectPropertyString obj "long-desc" val
+
+constructDOMHTMLFrameElementLongDesc :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFrameElementLongDesc val = constructObjectPropertyString "long-desc" val
+
+data DOMHTMLFrameElementLongDescPropertyInfo
+instance AttrInfo DOMHTMLFrameElementLongDescPropertyInfo where
+    type AttrAllowedOps DOMHTMLFrameElementLongDescPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFrameElementLongDescPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFrameElementLongDescPropertyInfo = DOMHTMLFrameElementK
+    type AttrGetType DOMHTMLFrameElementLongDescPropertyInfo = T.Text
+    type AttrLabel DOMHTMLFrameElementLongDescPropertyInfo = "DOMHTMLFrameElement::long-desc"
+    attrGet _ = getDOMHTMLFrameElementLongDesc
+    attrSet _ = setDOMHTMLFrameElementLongDesc
+    attrConstruct _ = constructDOMHTMLFrameElementLongDesc
+
+-- VVV Prop "margin-height"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFrameElementMarginHeight :: (MonadIO m, DOMHTMLFrameElementK o) => o -> m T.Text
+getDOMHTMLFrameElementMarginHeight obj = liftIO $ getObjectPropertyString obj "margin-height"
+
+setDOMHTMLFrameElementMarginHeight :: (MonadIO m, DOMHTMLFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLFrameElementMarginHeight obj val = liftIO $ setObjectPropertyString obj "margin-height" val
+
+constructDOMHTMLFrameElementMarginHeight :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFrameElementMarginHeight val = constructObjectPropertyString "margin-height" val
+
+data DOMHTMLFrameElementMarginHeightPropertyInfo
+instance AttrInfo DOMHTMLFrameElementMarginHeightPropertyInfo where
+    type AttrAllowedOps DOMHTMLFrameElementMarginHeightPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFrameElementMarginHeightPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFrameElementMarginHeightPropertyInfo = DOMHTMLFrameElementK
+    type AttrGetType DOMHTMLFrameElementMarginHeightPropertyInfo = T.Text
+    type AttrLabel DOMHTMLFrameElementMarginHeightPropertyInfo = "DOMHTMLFrameElement::margin-height"
+    attrGet _ = getDOMHTMLFrameElementMarginHeight
+    attrSet _ = setDOMHTMLFrameElementMarginHeight
+    attrConstruct _ = constructDOMHTMLFrameElementMarginHeight
+
+-- VVV Prop "margin-width"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFrameElementMarginWidth :: (MonadIO m, DOMHTMLFrameElementK o) => o -> m T.Text
+getDOMHTMLFrameElementMarginWidth obj = liftIO $ getObjectPropertyString obj "margin-width"
+
+setDOMHTMLFrameElementMarginWidth :: (MonadIO m, DOMHTMLFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLFrameElementMarginWidth obj val = liftIO $ setObjectPropertyString obj "margin-width" val
+
+constructDOMHTMLFrameElementMarginWidth :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFrameElementMarginWidth val = constructObjectPropertyString "margin-width" val
+
+data DOMHTMLFrameElementMarginWidthPropertyInfo
+instance AttrInfo DOMHTMLFrameElementMarginWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLFrameElementMarginWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFrameElementMarginWidthPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFrameElementMarginWidthPropertyInfo = DOMHTMLFrameElementK
+    type AttrGetType DOMHTMLFrameElementMarginWidthPropertyInfo = T.Text
+    type AttrLabel DOMHTMLFrameElementMarginWidthPropertyInfo = "DOMHTMLFrameElement::margin-width"
+    attrGet _ = getDOMHTMLFrameElementMarginWidth
+    attrSet _ = setDOMHTMLFrameElementMarginWidth
+    attrConstruct _ = constructDOMHTMLFrameElementMarginWidth
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFrameElementName :: (MonadIO m, DOMHTMLFrameElementK o) => o -> m T.Text
+getDOMHTMLFrameElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLFrameElementName :: (MonadIO m, DOMHTMLFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLFrameElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLFrameElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFrameElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLFrameElementNamePropertyInfo
+instance AttrInfo DOMHTMLFrameElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLFrameElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFrameElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFrameElementNamePropertyInfo = DOMHTMLFrameElementK
+    type AttrGetType DOMHTMLFrameElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLFrameElementNamePropertyInfo = "DOMHTMLFrameElement::name"
+    attrGet _ = getDOMHTMLFrameElementName
+    attrSet _ = setDOMHTMLFrameElementName
+    attrConstruct _ = constructDOMHTMLFrameElementName
+
+-- VVV Prop "no-resize"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFrameElementNoResize :: (MonadIO m, DOMHTMLFrameElementK o) => o -> m Bool
+getDOMHTMLFrameElementNoResize obj = liftIO $ getObjectPropertyBool obj "no-resize"
+
+setDOMHTMLFrameElementNoResize :: (MonadIO m, DOMHTMLFrameElementK o) => o -> Bool -> m ()
+setDOMHTMLFrameElementNoResize obj val = liftIO $ setObjectPropertyBool obj "no-resize" val
+
+constructDOMHTMLFrameElementNoResize :: Bool -> IO ([Char], GValue)
+constructDOMHTMLFrameElementNoResize val = constructObjectPropertyBool "no-resize" val
+
+data DOMHTMLFrameElementNoResizePropertyInfo
+instance AttrInfo DOMHTMLFrameElementNoResizePropertyInfo where
+    type AttrAllowedOps DOMHTMLFrameElementNoResizePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFrameElementNoResizePropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLFrameElementNoResizePropertyInfo = DOMHTMLFrameElementK
+    type AttrGetType DOMHTMLFrameElementNoResizePropertyInfo = Bool
+    type AttrLabel DOMHTMLFrameElementNoResizePropertyInfo = "DOMHTMLFrameElement::no-resize"
+    attrGet _ = getDOMHTMLFrameElementNoResize
+    attrSet _ = setDOMHTMLFrameElementNoResize
+    attrConstruct _ = constructDOMHTMLFrameElementNoResize
+
+-- VVV Prop "scrolling"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFrameElementScrolling :: (MonadIO m, DOMHTMLFrameElementK o) => o -> m T.Text
+getDOMHTMLFrameElementScrolling obj = liftIO $ getObjectPropertyString obj "scrolling"
+
+setDOMHTMLFrameElementScrolling :: (MonadIO m, DOMHTMLFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLFrameElementScrolling obj val = liftIO $ setObjectPropertyString obj "scrolling" val
+
+constructDOMHTMLFrameElementScrolling :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFrameElementScrolling val = constructObjectPropertyString "scrolling" val
+
+data DOMHTMLFrameElementScrollingPropertyInfo
+instance AttrInfo DOMHTMLFrameElementScrollingPropertyInfo where
+    type AttrAllowedOps DOMHTMLFrameElementScrollingPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFrameElementScrollingPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFrameElementScrollingPropertyInfo = DOMHTMLFrameElementK
+    type AttrGetType DOMHTMLFrameElementScrollingPropertyInfo = T.Text
+    type AttrLabel DOMHTMLFrameElementScrollingPropertyInfo = "DOMHTMLFrameElement::scrolling"
+    attrGet _ = getDOMHTMLFrameElementScrolling
+    attrSet _ = setDOMHTMLFrameElementScrolling
+    attrConstruct _ = constructDOMHTMLFrameElementScrolling
+
+-- VVV Prop "src"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFrameElementSrc :: (MonadIO m, DOMHTMLFrameElementK o) => o -> m T.Text
+getDOMHTMLFrameElementSrc obj = liftIO $ getObjectPropertyString obj "src"
+
+setDOMHTMLFrameElementSrc :: (MonadIO m, DOMHTMLFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLFrameElementSrc obj val = liftIO $ setObjectPropertyString obj "src" val
+
+constructDOMHTMLFrameElementSrc :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFrameElementSrc val = constructObjectPropertyString "src" val
+
+data DOMHTMLFrameElementSrcPropertyInfo
+instance AttrInfo DOMHTMLFrameElementSrcPropertyInfo where
+    type AttrAllowedOps DOMHTMLFrameElementSrcPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFrameElementSrcPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFrameElementSrcPropertyInfo = DOMHTMLFrameElementK
+    type AttrGetType DOMHTMLFrameElementSrcPropertyInfo = T.Text
+    type AttrLabel DOMHTMLFrameElementSrcPropertyInfo = "DOMHTMLFrameElement::src"
+    attrGet _ = getDOMHTMLFrameElementSrc
+    attrSet _ = setDOMHTMLFrameElementSrc
+    attrConstruct _ = constructDOMHTMLFrameElementSrc
+
+-- VVV Prop "width"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLFrameElementWidth :: (MonadIO m, DOMHTMLFrameElementK o) => o -> m Int64
+getDOMHTMLFrameElementWidth obj = liftIO $ getObjectPropertyInt64 obj "width"
+
+data DOMHTMLFrameElementWidthPropertyInfo
+instance AttrInfo DOMHTMLFrameElementWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLFrameElementWidthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFrameElementWidthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLFrameElementWidthPropertyInfo = DOMHTMLFrameElementK
+    type AttrGetType DOMHTMLFrameElementWidthPropertyInfo = Int64
+    type AttrLabel DOMHTMLFrameElementWidthPropertyInfo = "DOMHTMLFrameElement::width"
+    attrGet _ = getDOMHTMLFrameElementWidth
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMHTMLFrameElement = DOMHTMLFrameElementAttributeList
+type DOMHTMLFrameElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-document", DOMHTMLFrameElementContentDocumentPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("content-window", DOMHTMLFrameElementContentWindowPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("frame-border", DOMHTMLFrameElementFrameBorderPropertyInfo), '("height", DOMHTMLFrameElementHeightPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("long-desc", DOMHTMLFrameElementLongDescPropertyInfo), '("margin-height", DOMHTMLFrameElementMarginHeightPropertyInfo), '("margin-width", DOMHTMLFrameElementMarginWidthPropertyInfo), '("name", DOMHTMLFrameElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("no-resize", DOMHTMLFrameElementNoResizePropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("scrolling", DOMHTMLFrameElementScrollingPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("src", DOMHTMLFrameElementSrcPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("width", DOMHTMLFrameElementWidthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLFrameElement = DOMHTMLFrameElementSignalList
+type DOMHTMLFrameElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLFrameElement::get_content_document
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDocument"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_get_content_document" webkit_dom_html_frame_element_get_content_document :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    IO (Ptr DOMDocument)
+
+
+dOMHTMLFrameElementGetContentDocument ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    m DOMDocument
+dOMHTMLFrameElementGetContentDocument _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_frame_element_get_content_document _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_frame_element_get_content_document" result
+    result' <- (newObject DOMDocument) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFrameElement::get_content_window
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDOMWindow"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_get_content_window" webkit_dom_html_frame_element_get_content_window :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    IO (Ptr DOMDOMWindow)
+
+
+dOMHTMLFrameElementGetContentWindow ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    m DOMDOMWindow
+dOMHTMLFrameElementGetContentWindow _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_frame_element_get_content_window _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_frame_element_get_content_window" result
+    result' <- (wrapObject DOMDOMWindow) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFrameElement::get_frame_border
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_get_frame_border" webkit_dom_html_frame_element_get_frame_border :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    IO CString
+
+
+dOMHTMLFrameElementGetFrameBorder ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFrameElementGetFrameBorder _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_frame_element_get_frame_border _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_frame_element_get_frame_border" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFrameElement::get_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_get_height" webkit_dom_html_frame_element_get_height :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    IO Int64
+
+
+dOMHTMLFrameElementGetHeight ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLFrameElementGetHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_frame_element_get_height _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLFrameElement::get_long_desc
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_get_long_desc" webkit_dom_html_frame_element_get_long_desc :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    IO CString
+
+
+dOMHTMLFrameElementGetLongDesc ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFrameElementGetLongDesc _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_frame_element_get_long_desc _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_frame_element_get_long_desc" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFrameElement::get_margin_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_get_margin_height" webkit_dom_html_frame_element_get_margin_height :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    IO CString
+
+
+dOMHTMLFrameElementGetMarginHeight ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFrameElementGetMarginHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_frame_element_get_margin_height _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_frame_element_get_margin_height" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFrameElement::get_margin_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_get_margin_width" webkit_dom_html_frame_element_get_margin_width :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    IO CString
+
+
+dOMHTMLFrameElementGetMarginWidth ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFrameElementGetMarginWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_frame_element_get_margin_width _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_frame_element_get_margin_width" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFrameElement::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_get_name" webkit_dom_html_frame_element_get_name :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    IO CString
+
+
+dOMHTMLFrameElementGetName ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFrameElementGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_frame_element_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_frame_element_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFrameElement::get_no_resize
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_get_no_resize" webkit_dom_html_frame_element_get_no_resize :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    IO CInt
+
+
+dOMHTMLFrameElementGetNoResize ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLFrameElementGetNoResize _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_frame_element_get_no_resize _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFrameElement::get_scrolling
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_get_scrolling" webkit_dom_html_frame_element_get_scrolling :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    IO CString
+
+
+dOMHTMLFrameElementGetScrolling ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFrameElementGetScrolling _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_frame_element_get_scrolling _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_frame_element_get_scrolling" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFrameElement::get_src
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_get_src" webkit_dom_html_frame_element_get_src :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    IO CString
+
+
+dOMHTMLFrameElementGetSrc ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFrameElementGetSrc _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_frame_element_get_src _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_frame_element_get_src" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFrameElement::get_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_get_width" webkit_dom_html_frame_element_get_width :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    IO Int64
+
+
+dOMHTMLFrameElementGetWidth ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLFrameElementGetWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_frame_element_get_width _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLFrameElement::set_frame_border
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_set_frame_border" webkit_dom_html_frame_element_set_frame_border :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFrameElementSetFrameBorder ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFrameElementSetFrameBorder _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_frame_element_set_frame_border _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFrameElement::set_long_desc
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_set_long_desc" webkit_dom_html_frame_element_set_long_desc :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFrameElementSetLongDesc ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFrameElementSetLongDesc _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_frame_element_set_long_desc _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFrameElement::set_margin_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_set_margin_height" webkit_dom_html_frame_element_set_margin_height :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFrameElementSetMarginHeight ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFrameElementSetMarginHeight _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_frame_element_set_margin_height _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFrameElement::set_margin_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_set_margin_width" webkit_dom_html_frame_element_set_margin_width :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFrameElementSetMarginWidth ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFrameElementSetMarginWidth _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_frame_element_set_margin_width _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFrameElement::set_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_set_name" webkit_dom_html_frame_element_set_name :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFrameElementSetName ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFrameElementSetName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_frame_element_set_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFrameElement::set_no_resize
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_set_no_resize" webkit_dom_html_frame_element_set_no_resize :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLFrameElementSetNoResize ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLFrameElementSetNoResize _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_frame_element_set_no_resize _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLFrameElement::set_scrolling
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_set_scrolling" webkit_dom_html_frame_element_set_scrolling :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFrameElementSetScrolling ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFrameElementSetScrolling _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_frame_element_set_scrolling _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFrameElement::set_src
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_element_set_src" webkit_dom_html_frame_element_set_src :: 
+    Ptr DOMHTMLFrameElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFrameElementSetSrc ::
+    (MonadIO m, DOMHTMLFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFrameElementSetSrc _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_frame_element_set_src _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLFrameElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLFrameElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLFrameElement.hs-boot
@@ -0,0 +1,25 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLFrameElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLFrameElement = DOMHTMLFrameElement (ForeignPtr DOMHTMLFrameElement)
+instance GObject DOMHTMLFrameElement where
+class GObject o => DOMHTMLFrameElementK o
+instance (GObject o, IsDescendantOf DOMHTMLFrameElement o) => DOMHTMLFrameElementK o
+data DOMHTMLFrameElementContentDocumentPropertyInfo
+data DOMHTMLFrameElementContentWindowPropertyInfo
+data DOMHTMLFrameElementFrameBorderPropertyInfo
+data DOMHTMLFrameElementHeightPropertyInfo
+data DOMHTMLFrameElementLongDescPropertyInfo
+data DOMHTMLFrameElementMarginHeightPropertyInfo
+data DOMHTMLFrameElementMarginWidthPropertyInfo
+data DOMHTMLFrameElementNamePropertyInfo
+data DOMHTMLFrameElementNoResizePropertyInfo
+data DOMHTMLFrameElementScrollingPropertyInfo
+data DOMHTMLFrameElementSrcPropertyInfo
+data DOMHTMLFrameElementWidthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLFrameSetElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLFrameSetElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLFrameSetElement.hs
@@ -0,0 +1,252 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLFrameSetElement
+    ( 
+
+-- * Exported types
+    DOMHTMLFrameSetElement(..)              ,
+    DOMHTMLFrameSetElementK                 ,
+    toDOMHTMLFrameSetElement                ,
+    noDOMHTMLFrameSetElement                ,
+
+
+ -- * Methods
+-- ** dOMHTMLFrameSetElementGetCols
+    dOMHTMLFrameSetElementGetCols           ,
+
+
+-- ** dOMHTMLFrameSetElementGetRows
+    dOMHTMLFrameSetElementGetRows           ,
+
+
+-- ** dOMHTMLFrameSetElementSetCols
+    dOMHTMLFrameSetElementSetCols           ,
+
+
+-- ** dOMHTMLFrameSetElementSetRows
+    dOMHTMLFrameSetElementSetRows           ,
+
+
+
+
+ -- * Properties
+-- ** Cols
+    DOMHTMLFrameSetElementColsPropertyInfo  ,
+    constructDOMHTMLFrameSetElementCols     ,
+    getDOMHTMLFrameSetElementCols           ,
+    setDOMHTMLFrameSetElementCols           ,
+
+
+-- ** Rows
+    DOMHTMLFrameSetElementRowsPropertyInfo  ,
+    constructDOMHTMLFrameSetElementRows     ,
+    getDOMHTMLFrameSetElementRows           ,
+    setDOMHTMLFrameSetElementRows           ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLFrameSetElement = DOMHTMLFrameSetElement (ForeignPtr DOMHTMLFrameSetElement)
+foreign import ccall "webkit_dom_html_frame_set_element_get_type"
+    c_webkit_dom_html_frame_set_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLFrameSetElement = DOMHTMLFrameSetElementParentTypes
+type DOMHTMLFrameSetElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLFrameSetElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_frame_set_element_get_type
+    
+
+class GObject o => DOMHTMLFrameSetElementK o
+instance (GObject o, IsDescendantOf DOMHTMLFrameSetElement o) => DOMHTMLFrameSetElementK o
+
+toDOMHTMLFrameSetElement :: DOMHTMLFrameSetElementK o => o -> IO DOMHTMLFrameSetElement
+toDOMHTMLFrameSetElement = unsafeCastTo DOMHTMLFrameSetElement
+
+noDOMHTMLFrameSetElement :: Maybe DOMHTMLFrameSetElement
+noDOMHTMLFrameSetElement = Nothing
+
+-- VVV Prop "cols"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFrameSetElementCols :: (MonadIO m, DOMHTMLFrameSetElementK o) => o -> m T.Text
+getDOMHTMLFrameSetElementCols obj = liftIO $ getObjectPropertyString obj "cols"
+
+setDOMHTMLFrameSetElementCols :: (MonadIO m, DOMHTMLFrameSetElementK o) => o -> T.Text -> m ()
+setDOMHTMLFrameSetElementCols obj val = liftIO $ setObjectPropertyString obj "cols" val
+
+constructDOMHTMLFrameSetElementCols :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFrameSetElementCols val = constructObjectPropertyString "cols" val
+
+data DOMHTMLFrameSetElementColsPropertyInfo
+instance AttrInfo DOMHTMLFrameSetElementColsPropertyInfo where
+    type AttrAllowedOps DOMHTMLFrameSetElementColsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFrameSetElementColsPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFrameSetElementColsPropertyInfo = DOMHTMLFrameSetElementK
+    type AttrGetType DOMHTMLFrameSetElementColsPropertyInfo = T.Text
+    type AttrLabel DOMHTMLFrameSetElementColsPropertyInfo = "DOMHTMLFrameSetElement::cols"
+    attrGet _ = getDOMHTMLFrameSetElementCols
+    attrSet _ = setDOMHTMLFrameSetElementCols
+    attrConstruct _ = constructDOMHTMLFrameSetElementCols
+
+-- VVV Prop "rows"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLFrameSetElementRows :: (MonadIO m, DOMHTMLFrameSetElementK o) => o -> m T.Text
+getDOMHTMLFrameSetElementRows obj = liftIO $ getObjectPropertyString obj "rows"
+
+setDOMHTMLFrameSetElementRows :: (MonadIO m, DOMHTMLFrameSetElementK o) => o -> T.Text -> m ()
+setDOMHTMLFrameSetElementRows obj val = liftIO $ setObjectPropertyString obj "rows" val
+
+constructDOMHTMLFrameSetElementRows :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLFrameSetElementRows val = constructObjectPropertyString "rows" val
+
+data DOMHTMLFrameSetElementRowsPropertyInfo
+instance AttrInfo DOMHTMLFrameSetElementRowsPropertyInfo where
+    type AttrAllowedOps DOMHTMLFrameSetElementRowsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLFrameSetElementRowsPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLFrameSetElementRowsPropertyInfo = DOMHTMLFrameSetElementK
+    type AttrGetType DOMHTMLFrameSetElementRowsPropertyInfo = T.Text
+    type AttrLabel DOMHTMLFrameSetElementRowsPropertyInfo = "DOMHTMLFrameSetElement::rows"
+    attrGet _ = getDOMHTMLFrameSetElementRows
+    attrSet _ = setDOMHTMLFrameSetElementRows
+    attrConstruct _ = constructDOMHTMLFrameSetElementRows
+
+type instance AttributeList DOMHTMLFrameSetElement = DOMHTMLFrameSetElementAttributeList
+type DOMHTMLFrameSetElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("cols", DOMHTMLFrameSetElementColsPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("rows", DOMHTMLFrameSetElementRowsPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLFrameSetElement = DOMHTMLFrameSetElementSignalList
+type DOMHTMLFrameSetElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLFrameSetElement::get_cols
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameSetElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameSetElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_set_element_get_cols" webkit_dom_html_frame_set_element_get_cols :: 
+    Ptr DOMHTMLFrameSetElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameSetElement"
+    IO CString
+
+
+dOMHTMLFrameSetElementGetCols ::
+    (MonadIO m, DOMHTMLFrameSetElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFrameSetElementGetCols _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_frame_set_element_get_cols _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_frame_set_element_get_cols" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFrameSetElement::get_rows
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameSetElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameSetElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_set_element_get_rows" webkit_dom_html_frame_set_element_get_rows :: 
+    Ptr DOMHTMLFrameSetElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameSetElement"
+    IO CString
+
+
+dOMHTMLFrameSetElementGetRows ::
+    (MonadIO m, DOMHTMLFrameSetElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLFrameSetElementGetRows _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_frame_set_element_get_rows _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_frame_set_element_get_rows" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLFrameSetElement::set_cols
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameSetElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameSetElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_set_element_set_cols" webkit_dom_html_frame_set_element_set_cols :: 
+    Ptr DOMHTMLFrameSetElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameSetElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFrameSetElementSetCols ::
+    (MonadIO m, DOMHTMLFrameSetElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFrameSetElementSetCols _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_frame_set_element_set_cols _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLFrameSetElement::set_rows
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameSetElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLFrameSetElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_frame_set_element_set_rows" webkit_dom_html_frame_set_element_set_rows :: 
+    Ptr DOMHTMLFrameSetElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLFrameSetElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLFrameSetElementSetRows ::
+    (MonadIO m, DOMHTMLFrameSetElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLFrameSetElementSetRows _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_frame_set_element_set_rows _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLFrameSetElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLFrameSetElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLFrameSetElement.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLFrameSetElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLFrameSetElement = DOMHTMLFrameSetElement (ForeignPtr DOMHTMLFrameSetElement)
+instance GObject DOMHTMLFrameSetElement where
+class GObject o => DOMHTMLFrameSetElementK o
+instance (GObject o, IsDescendantOf DOMHTMLFrameSetElement o) => DOMHTMLFrameSetElementK o
+data DOMHTMLFrameSetElementColsPropertyInfo
+data DOMHTMLFrameSetElementRowsPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLHRElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLHRElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLHRElement.hs
@@ -0,0 +1,437 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLHRElement
+    ( 
+
+-- * Exported types
+    DOMHTMLHRElement(..)                    ,
+    DOMHTMLHRElementK                       ,
+    toDOMHTMLHRElement                      ,
+    noDOMHTMLHRElement                      ,
+
+
+ -- * Methods
+-- ** dOMHTMLHRElementGetAlign
+    dOMHTMLHRElementGetAlign                ,
+
+
+-- ** dOMHTMLHRElementGetNoShade
+    dOMHTMLHRElementGetNoShade              ,
+
+
+-- ** dOMHTMLHRElementGetSize
+    dOMHTMLHRElementGetSize                 ,
+
+
+-- ** dOMHTMLHRElementGetWidth
+    dOMHTMLHRElementGetWidth                ,
+
+
+-- ** dOMHTMLHRElementSetAlign
+    dOMHTMLHRElementSetAlign                ,
+
+
+-- ** dOMHTMLHRElementSetNoShade
+    dOMHTMLHRElementSetNoShade              ,
+
+
+-- ** dOMHTMLHRElementSetSize
+    dOMHTMLHRElementSetSize                 ,
+
+
+-- ** dOMHTMLHRElementSetWidth
+    dOMHTMLHRElementSetWidth                ,
+
+
+
+
+ -- * Properties
+-- ** Align
+    DOMHTMLHRElementAlignPropertyInfo       ,
+    constructDOMHTMLHRElementAlign          ,
+    getDOMHTMLHRElementAlign                ,
+    setDOMHTMLHRElementAlign                ,
+
+
+-- ** NoShade
+    DOMHTMLHRElementNoShadePropertyInfo     ,
+    constructDOMHTMLHRElementNoShade        ,
+    getDOMHTMLHRElementNoShade              ,
+    setDOMHTMLHRElementNoShade              ,
+
+
+-- ** Size
+    DOMHTMLHRElementSizePropertyInfo        ,
+    constructDOMHTMLHRElementSize           ,
+    getDOMHTMLHRElementSize                 ,
+    setDOMHTMLHRElementSize                 ,
+
+
+-- ** Width
+    DOMHTMLHRElementWidthPropertyInfo       ,
+    constructDOMHTMLHRElementWidth          ,
+    getDOMHTMLHRElementWidth                ,
+    setDOMHTMLHRElementWidth                ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLHRElement = DOMHTMLHRElement (ForeignPtr DOMHTMLHRElement)
+foreign import ccall "webkit_dom_html_hr_element_get_type"
+    c_webkit_dom_html_hr_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLHRElement = DOMHTMLHRElementParentTypes
+type DOMHTMLHRElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLHRElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_hr_element_get_type
+    
+
+class GObject o => DOMHTMLHRElementK o
+instance (GObject o, IsDescendantOf DOMHTMLHRElement o) => DOMHTMLHRElementK o
+
+toDOMHTMLHRElement :: DOMHTMLHRElementK o => o -> IO DOMHTMLHRElement
+toDOMHTMLHRElement = unsafeCastTo DOMHTMLHRElement
+
+noDOMHTMLHRElement :: Maybe DOMHTMLHRElement
+noDOMHTMLHRElement = Nothing
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLHRElementAlign :: (MonadIO m, DOMHTMLHRElementK o) => o -> m T.Text
+getDOMHTMLHRElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLHRElementAlign :: (MonadIO m, DOMHTMLHRElementK o) => o -> T.Text -> m ()
+setDOMHTMLHRElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLHRElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLHRElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLHRElementAlignPropertyInfo
+instance AttrInfo DOMHTMLHRElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLHRElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLHRElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLHRElementAlignPropertyInfo = DOMHTMLHRElementK
+    type AttrGetType DOMHTMLHRElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLHRElementAlignPropertyInfo = "DOMHTMLHRElement::align"
+    attrGet _ = getDOMHTMLHRElementAlign
+    attrSet _ = setDOMHTMLHRElementAlign
+    attrConstruct _ = constructDOMHTMLHRElementAlign
+
+-- VVV Prop "no-shade"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLHRElementNoShade :: (MonadIO m, DOMHTMLHRElementK o) => o -> m Bool
+getDOMHTMLHRElementNoShade obj = liftIO $ getObjectPropertyBool obj "no-shade"
+
+setDOMHTMLHRElementNoShade :: (MonadIO m, DOMHTMLHRElementK o) => o -> Bool -> m ()
+setDOMHTMLHRElementNoShade obj val = liftIO $ setObjectPropertyBool obj "no-shade" val
+
+constructDOMHTMLHRElementNoShade :: Bool -> IO ([Char], GValue)
+constructDOMHTMLHRElementNoShade val = constructObjectPropertyBool "no-shade" val
+
+data DOMHTMLHRElementNoShadePropertyInfo
+instance AttrInfo DOMHTMLHRElementNoShadePropertyInfo where
+    type AttrAllowedOps DOMHTMLHRElementNoShadePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLHRElementNoShadePropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLHRElementNoShadePropertyInfo = DOMHTMLHRElementK
+    type AttrGetType DOMHTMLHRElementNoShadePropertyInfo = Bool
+    type AttrLabel DOMHTMLHRElementNoShadePropertyInfo = "DOMHTMLHRElement::no-shade"
+    attrGet _ = getDOMHTMLHRElementNoShade
+    attrSet _ = setDOMHTMLHRElementNoShade
+    attrConstruct _ = constructDOMHTMLHRElementNoShade
+
+-- VVV Prop "size"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLHRElementSize :: (MonadIO m, DOMHTMLHRElementK o) => o -> m T.Text
+getDOMHTMLHRElementSize obj = liftIO $ getObjectPropertyString obj "size"
+
+setDOMHTMLHRElementSize :: (MonadIO m, DOMHTMLHRElementK o) => o -> T.Text -> m ()
+setDOMHTMLHRElementSize obj val = liftIO $ setObjectPropertyString obj "size" val
+
+constructDOMHTMLHRElementSize :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLHRElementSize val = constructObjectPropertyString "size" val
+
+data DOMHTMLHRElementSizePropertyInfo
+instance AttrInfo DOMHTMLHRElementSizePropertyInfo where
+    type AttrAllowedOps DOMHTMLHRElementSizePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLHRElementSizePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLHRElementSizePropertyInfo = DOMHTMLHRElementK
+    type AttrGetType DOMHTMLHRElementSizePropertyInfo = T.Text
+    type AttrLabel DOMHTMLHRElementSizePropertyInfo = "DOMHTMLHRElement::size"
+    attrGet _ = getDOMHTMLHRElementSize
+    attrSet _ = setDOMHTMLHRElementSize
+    attrConstruct _ = constructDOMHTMLHRElementSize
+
+-- VVV Prop "width"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLHRElementWidth :: (MonadIO m, DOMHTMLHRElementK o) => o -> m T.Text
+getDOMHTMLHRElementWidth obj = liftIO $ getObjectPropertyString obj "width"
+
+setDOMHTMLHRElementWidth :: (MonadIO m, DOMHTMLHRElementK o) => o -> T.Text -> m ()
+setDOMHTMLHRElementWidth obj val = liftIO $ setObjectPropertyString obj "width" val
+
+constructDOMHTMLHRElementWidth :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLHRElementWidth val = constructObjectPropertyString "width" val
+
+data DOMHTMLHRElementWidthPropertyInfo
+instance AttrInfo DOMHTMLHRElementWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLHRElementWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLHRElementWidthPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLHRElementWidthPropertyInfo = DOMHTMLHRElementK
+    type AttrGetType DOMHTMLHRElementWidthPropertyInfo = T.Text
+    type AttrLabel DOMHTMLHRElementWidthPropertyInfo = "DOMHTMLHRElement::width"
+    attrGet _ = getDOMHTMLHRElementWidth
+    attrSet _ = setDOMHTMLHRElementWidth
+    attrConstruct _ = constructDOMHTMLHRElementWidth
+
+type instance AttributeList DOMHTMLHRElement = DOMHTMLHRElementAttributeList
+type DOMHTMLHRElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLHRElementAlignPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("no-shade", DOMHTMLHRElementNoShadePropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("size", DOMHTMLHRElementSizePropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("width", DOMHTMLHRElementWidthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLHRElement = DOMHTMLHRElementSignalList
+type DOMHTMLHRElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLHRElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_hr_element_get_align" webkit_dom_html_hr_element_get_align :: 
+    Ptr DOMHTMLHRElement ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLHRElement"
+    IO CString
+
+
+dOMHTMLHRElementGetAlign ::
+    (MonadIO m, DOMHTMLHRElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLHRElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_hr_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_hr_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLHRElement::get_no_shade
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_hr_element_get_no_shade" webkit_dom_html_hr_element_get_no_shade :: 
+    Ptr DOMHTMLHRElement ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLHRElement"
+    IO CInt
+
+
+dOMHTMLHRElementGetNoShade ::
+    (MonadIO m, DOMHTMLHRElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLHRElementGetNoShade _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_hr_element_get_no_shade _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLHRElement::get_size
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_hr_element_get_size" webkit_dom_html_hr_element_get_size :: 
+    Ptr DOMHTMLHRElement ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLHRElement"
+    IO CString
+
+
+dOMHTMLHRElementGetSize ::
+    (MonadIO m, DOMHTMLHRElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLHRElementGetSize _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_hr_element_get_size _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_hr_element_get_size" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLHRElement::get_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_hr_element_get_width" webkit_dom_html_hr_element_get_width :: 
+    Ptr DOMHTMLHRElement ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLHRElement"
+    IO CString
+
+
+dOMHTMLHRElementGetWidth ::
+    (MonadIO m, DOMHTMLHRElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLHRElementGetWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_hr_element_get_width _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_hr_element_get_width" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLHRElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_hr_element_set_align" webkit_dom_html_hr_element_set_align :: 
+    Ptr DOMHTMLHRElement ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLHRElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLHRElementSetAlign ::
+    (MonadIO m, DOMHTMLHRElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLHRElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_hr_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLHRElement::set_no_shade
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_hr_element_set_no_shade" webkit_dom_html_hr_element_set_no_shade :: 
+    Ptr DOMHTMLHRElement ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLHRElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLHRElementSetNoShade ::
+    (MonadIO m, DOMHTMLHRElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLHRElementSetNoShade _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_hr_element_set_no_shade _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLHRElement::set_size
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_hr_element_set_size" webkit_dom_html_hr_element_set_size :: 
+    Ptr DOMHTMLHRElement ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLHRElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLHRElementSetSize ::
+    (MonadIO m, DOMHTMLHRElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLHRElementSetSize _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_hr_element_set_size _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLHRElement::set_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHRElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_hr_element_set_width" webkit_dom_html_hr_element_set_width :: 
+    Ptr DOMHTMLHRElement ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLHRElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLHRElementSetWidth ::
+    (MonadIO m, DOMHTMLHRElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLHRElementSetWidth _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_hr_element_set_width _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLHRElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLHRElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLHRElement.hs-boot
@@ -0,0 +1,17 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLHRElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLHRElement = DOMHTMLHRElement (ForeignPtr DOMHTMLHRElement)
+instance GObject DOMHTMLHRElement where
+class GObject o => DOMHTMLHRElementK o
+instance (GObject o, IsDescendantOf DOMHTMLHRElement o) => DOMHTMLHRElementK o
+data DOMHTMLHRElementAlignPropertyInfo
+data DOMHTMLHRElementNoShadePropertyInfo
+data DOMHTMLHRElementSizePropertyInfo
+data DOMHTMLHRElementWidthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLHeadElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLHeadElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLHeadElement.hs
@@ -0,0 +1,158 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLHeadElement
+    ( 
+
+-- * Exported types
+    DOMHTMLHeadElement(..)                  ,
+    DOMHTMLHeadElementK                     ,
+    toDOMHTMLHeadElement                    ,
+    noDOMHTMLHeadElement                    ,
+
+
+ -- * Methods
+-- ** dOMHTMLHeadElementGetProfile
+    dOMHTMLHeadElementGetProfile            ,
+
+
+-- ** dOMHTMLHeadElementSetProfile
+    dOMHTMLHeadElementSetProfile            ,
+
+
+
+
+ -- * Properties
+-- ** Profile
+    DOMHTMLHeadElementProfilePropertyInfo   ,
+    constructDOMHTMLHeadElementProfile      ,
+    getDOMHTMLHeadElementProfile            ,
+    setDOMHTMLHeadElementProfile            ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLHeadElement = DOMHTMLHeadElement (ForeignPtr DOMHTMLHeadElement)
+foreign import ccall "webkit_dom_html_head_element_get_type"
+    c_webkit_dom_html_head_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLHeadElement = DOMHTMLHeadElementParentTypes
+type DOMHTMLHeadElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLHeadElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_head_element_get_type
+    
+
+class GObject o => DOMHTMLHeadElementK o
+instance (GObject o, IsDescendantOf DOMHTMLHeadElement o) => DOMHTMLHeadElementK o
+
+toDOMHTMLHeadElement :: DOMHTMLHeadElementK o => o -> IO DOMHTMLHeadElement
+toDOMHTMLHeadElement = unsafeCastTo DOMHTMLHeadElement
+
+noDOMHTMLHeadElement :: Maybe DOMHTMLHeadElement
+noDOMHTMLHeadElement = Nothing
+
+-- VVV Prop "profile"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLHeadElementProfile :: (MonadIO m, DOMHTMLHeadElementK o) => o -> m T.Text
+getDOMHTMLHeadElementProfile obj = liftIO $ getObjectPropertyString obj "profile"
+
+setDOMHTMLHeadElementProfile :: (MonadIO m, DOMHTMLHeadElementK o) => o -> T.Text -> m ()
+setDOMHTMLHeadElementProfile obj val = liftIO $ setObjectPropertyString obj "profile" val
+
+constructDOMHTMLHeadElementProfile :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLHeadElementProfile val = constructObjectPropertyString "profile" val
+
+data DOMHTMLHeadElementProfilePropertyInfo
+instance AttrInfo DOMHTMLHeadElementProfilePropertyInfo where
+    type AttrAllowedOps DOMHTMLHeadElementProfilePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLHeadElementProfilePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLHeadElementProfilePropertyInfo = DOMHTMLHeadElementK
+    type AttrGetType DOMHTMLHeadElementProfilePropertyInfo = T.Text
+    type AttrLabel DOMHTMLHeadElementProfilePropertyInfo = "DOMHTMLHeadElement::profile"
+    attrGet _ = getDOMHTMLHeadElementProfile
+    attrSet _ = setDOMHTMLHeadElementProfile
+    attrConstruct _ = constructDOMHTMLHeadElementProfile
+
+type instance AttributeList DOMHTMLHeadElement = DOMHTMLHeadElementAttributeList
+type DOMHTMLHeadElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("profile", DOMHTMLHeadElementProfilePropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLHeadElement = DOMHTMLHeadElementSignalList
+type DOMHTMLHeadElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLHeadElement::get_profile
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHeadElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHeadElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_head_element_get_profile" webkit_dom_html_head_element_get_profile :: 
+    Ptr DOMHTMLHeadElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLHeadElement"
+    IO CString
+
+
+dOMHTMLHeadElementGetProfile ::
+    (MonadIO m, DOMHTMLHeadElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLHeadElementGetProfile _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_head_element_get_profile _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_head_element_get_profile" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLHeadElement::set_profile
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHeadElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHeadElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_head_element_set_profile" webkit_dom_html_head_element_set_profile :: 
+    Ptr DOMHTMLHeadElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLHeadElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLHeadElementSetProfile ::
+    (MonadIO m, DOMHTMLHeadElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLHeadElementSetProfile _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_head_element_set_profile _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLHeadElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLHeadElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLHeadElement.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLHeadElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLHeadElement = DOMHTMLHeadElement (ForeignPtr DOMHTMLHeadElement)
+instance GObject DOMHTMLHeadElement where
+class GObject o => DOMHTMLHeadElementK o
+instance (GObject o, IsDescendantOf DOMHTMLHeadElement o) => DOMHTMLHeadElementK o
+data DOMHTMLHeadElementProfilePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLHeadingElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLHeadingElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLHeadingElement.hs
@@ -0,0 +1,158 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLHeadingElement
+    ( 
+
+-- * Exported types
+    DOMHTMLHeadingElement(..)               ,
+    DOMHTMLHeadingElementK                  ,
+    toDOMHTMLHeadingElement                 ,
+    noDOMHTMLHeadingElement                 ,
+
+
+ -- * Methods
+-- ** dOMHTMLHeadingElementGetAlign
+    dOMHTMLHeadingElementGetAlign           ,
+
+
+-- ** dOMHTMLHeadingElementSetAlign
+    dOMHTMLHeadingElementSetAlign           ,
+
+
+
+
+ -- * Properties
+-- ** Align
+    DOMHTMLHeadingElementAlignPropertyInfo  ,
+    constructDOMHTMLHeadingElementAlign     ,
+    getDOMHTMLHeadingElementAlign           ,
+    setDOMHTMLHeadingElementAlign           ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLHeadingElement = DOMHTMLHeadingElement (ForeignPtr DOMHTMLHeadingElement)
+foreign import ccall "webkit_dom_html_heading_element_get_type"
+    c_webkit_dom_html_heading_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLHeadingElement = DOMHTMLHeadingElementParentTypes
+type DOMHTMLHeadingElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLHeadingElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_heading_element_get_type
+    
+
+class GObject o => DOMHTMLHeadingElementK o
+instance (GObject o, IsDescendantOf DOMHTMLHeadingElement o) => DOMHTMLHeadingElementK o
+
+toDOMHTMLHeadingElement :: DOMHTMLHeadingElementK o => o -> IO DOMHTMLHeadingElement
+toDOMHTMLHeadingElement = unsafeCastTo DOMHTMLHeadingElement
+
+noDOMHTMLHeadingElement :: Maybe DOMHTMLHeadingElement
+noDOMHTMLHeadingElement = Nothing
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLHeadingElementAlign :: (MonadIO m, DOMHTMLHeadingElementK o) => o -> m T.Text
+getDOMHTMLHeadingElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLHeadingElementAlign :: (MonadIO m, DOMHTMLHeadingElementK o) => o -> T.Text -> m ()
+setDOMHTMLHeadingElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLHeadingElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLHeadingElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLHeadingElementAlignPropertyInfo
+instance AttrInfo DOMHTMLHeadingElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLHeadingElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLHeadingElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLHeadingElementAlignPropertyInfo = DOMHTMLHeadingElementK
+    type AttrGetType DOMHTMLHeadingElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLHeadingElementAlignPropertyInfo = "DOMHTMLHeadingElement::align"
+    attrGet _ = getDOMHTMLHeadingElementAlign
+    attrSet _ = setDOMHTMLHeadingElementAlign
+    attrConstruct _ = constructDOMHTMLHeadingElementAlign
+
+type instance AttributeList DOMHTMLHeadingElement = DOMHTMLHeadingElementAttributeList
+type DOMHTMLHeadingElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLHeadingElementAlignPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLHeadingElement = DOMHTMLHeadingElementSignalList
+type DOMHTMLHeadingElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLHeadingElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHeadingElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHeadingElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_heading_element_get_align" webkit_dom_html_heading_element_get_align :: 
+    Ptr DOMHTMLHeadingElement ->            -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLHeadingElement"
+    IO CString
+
+
+dOMHTMLHeadingElementGetAlign ::
+    (MonadIO m, DOMHTMLHeadingElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLHeadingElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_heading_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_heading_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLHeadingElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHeadingElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHeadingElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_heading_element_set_align" webkit_dom_html_heading_element_set_align :: 
+    Ptr DOMHTMLHeadingElement ->            -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLHeadingElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLHeadingElementSetAlign ::
+    (MonadIO m, DOMHTMLHeadingElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLHeadingElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_heading_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLHeadingElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLHeadingElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLHeadingElement.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLHeadingElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLHeadingElement = DOMHTMLHeadingElement (ForeignPtr DOMHTMLHeadingElement)
+instance GObject DOMHTMLHeadingElement where
+class GObject o => DOMHTMLHeadingElementK o
+instance (GObject o, IsDescendantOf DOMHTMLHeadingElement o) => DOMHTMLHeadingElementK o
+data DOMHTMLHeadingElementAlignPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLHtmlElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLHtmlElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLHtmlElement.hs
@@ -0,0 +1,189 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLHtmlElement
+    ( 
+
+-- * Exported types
+    DOMHTMLHtmlElement(..)                  ,
+    DOMHTMLHtmlElementK                     ,
+    toDOMHTMLHtmlElement                    ,
+    noDOMHTMLHtmlElement                    ,
+
+
+ -- * Methods
+-- ** dOMHTMLHtmlElementGetVersion
+    dOMHTMLHtmlElementGetVersion            ,
+
+
+-- ** dOMHTMLHtmlElementSetVersion
+    dOMHTMLHtmlElementSetVersion            ,
+
+
+
+
+ -- * Properties
+-- ** Manifest
+    DOMHTMLHtmlElementManifestPropertyInfo  ,
+    constructDOMHTMLHtmlElementManifest     ,
+    getDOMHTMLHtmlElementManifest           ,
+    setDOMHTMLHtmlElementManifest           ,
+
+
+-- ** Version
+    DOMHTMLHtmlElementVersionPropertyInfo   ,
+    constructDOMHTMLHtmlElementVersion      ,
+    getDOMHTMLHtmlElementVersion            ,
+    setDOMHTMLHtmlElementVersion            ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLHtmlElement = DOMHTMLHtmlElement (ForeignPtr DOMHTMLHtmlElement)
+foreign import ccall "webkit_dom_html_html_element_get_type"
+    c_webkit_dom_html_html_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLHtmlElement = DOMHTMLHtmlElementParentTypes
+type DOMHTMLHtmlElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLHtmlElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_html_element_get_type
+    
+
+class GObject o => DOMHTMLHtmlElementK o
+instance (GObject o, IsDescendantOf DOMHTMLHtmlElement o) => DOMHTMLHtmlElementK o
+
+toDOMHTMLHtmlElement :: DOMHTMLHtmlElementK o => o -> IO DOMHTMLHtmlElement
+toDOMHTMLHtmlElement = unsafeCastTo DOMHTMLHtmlElement
+
+noDOMHTMLHtmlElement :: Maybe DOMHTMLHtmlElement
+noDOMHTMLHtmlElement = Nothing
+
+-- VVV Prop "manifest"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLHtmlElementManifest :: (MonadIO m, DOMHTMLHtmlElementK o) => o -> m T.Text
+getDOMHTMLHtmlElementManifest obj = liftIO $ getObjectPropertyString obj "manifest"
+
+setDOMHTMLHtmlElementManifest :: (MonadIO m, DOMHTMLHtmlElementK o) => o -> T.Text -> m ()
+setDOMHTMLHtmlElementManifest obj val = liftIO $ setObjectPropertyString obj "manifest" val
+
+constructDOMHTMLHtmlElementManifest :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLHtmlElementManifest val = constructObjectPropertyString "manifest" val
+
+data DOMHTMLHtmlElementManifestPropertyInfo
+instance AttrInfo DOMHTMLHtmlElementManifestPropertyInfo where
+    type AttrAllowedOps DOMHTMLHtmlElementManifestPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLHtmlElementManifestPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLHtmlElementManifestPropertyInfo = DOMHTMLHtmlElementK
+    type AttrGetType DOMHTMLHtmlElementManifestPropertyInfo = T.Text
+    type AttrLabel DOMHTMLHtmlElementManifestPropertyInfo = "DOMHTMLHtmlElement::manifest"
+    attrGet _ = getDOMHTMLHtmlElementManifest
+    attrSet _ = setDOMHTMLHtmlElementManifest
+    attrConstruct _ = constructDOMHTMLHtmlElementManifest
+
+-- VVV Prop "version"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLHtmlElementVersion :: (MonadIO m, DOMHTMLHtmlElementK o) => o -> m T.Text
+getDOMHTMLHtmlElementVersion obj = liftIO $ getObjectPropertyString obj "version"
+
+setDOMHTMLHtmlElementVersion :: (MonadIO m, DOMHTMLHtmlElementK o) => o -> T.Text -> m ()
+setDOMHTMLHtmlElementVersion obj val = liftIO $ setObjectPropertyString obj "version" val
+
+constructDOMHTMLHtmlElementVersion :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLHtmlElementVersion val = constructObjectPropertyString "version" val
+
+data DOMHTMLHtmlElementVersionPropertyInfo
+instance AttrInfo DOMHTMLHtmlElementVersionPropertyInfo where
+    type AttrAllowedOps DOMHTMLHtmlElementVersionPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLHtmlElementVersionPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLHtmlElementVersionPropertyInfo = DOMHTMLHtmlElementK
+    type AttrGetType DOMHTMLHtmlElementVersionPropertyInfo = T.Text
+    type AttrLabel DOMHTMLHtmlElementVersionPropertyInfo = "DOMHTMLHtmlElement::version"
+    attrGet _ = getDOMHTMLHtmlElementVersion
+    attrSet _ = setDOMHTMLHtmlElementVersion
+    attrConstruct _ = constructDOMHTMLHtmlElementVersion
+
+type instance AttributeList DOMHTMLHtmlElement = DOMHTMLHtmlElementAttributeList
+type DOMHTMLHtmlElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("manifest", DOMHTMLHtmlElementManifestPropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("version", DOMHTMLHtmlElementVersionPropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLHtmlElement = DOMHTMLHtmlElementSignalList
+type DOMHTMLHtmlElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLHtmlElement::get_version
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHtmlElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHtmlElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_html_element_get_version" webkit_dom_html_html_element_get_version :: 
+    Ptr DOMHTMLHtmlElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLHtmlElement"
+    IO CString
+
+
+dOMHTMLHtmlElementGetVersion ::
+    (MonadIO m, DOMHTMLHtmlElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLHtmlElementGetVersion _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_html_element_get_version _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_html_element_get_version" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLHtmlElement::set_version
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHtmlElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLHtmlElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_html_element_set_version" webkit_dom_html_html_element_set_version :: 
+    Ptr DOMHTMLHtmlElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLHtmlElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLHtmlElementSetVersion ::
+    (MonadIO m, DOMHTMLHtmlElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLHtmlElementSetVersion _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_html_element_set_version _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLHtmlElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLHtmlElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLHtmlElement.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLHtmlElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLHtmlElement = DOMHTMLHtmlElement (ForeignPtr DOMHTMLHtmlElement)
+instance GObject DOMHTMLHtmlElement where
+class GObject o => DOMHTMLHtmlElementK o
+instance (GObject o, IsDescendantOf DOMHTMLHtmlElement o) => DOMHTMLHtmlElementK o
+data DOMHTMLHtmlElementManifestPropertyInfo
+data DOMHTMLHtmlElementVersionPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLIFrameElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLIFrameElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLIFrameElement.hs
@@ -0,0 +1,1172 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLIFrameElement
+    ( 
+
+-- * Exported types
+    DOMHTMLIFrameElement(..)                ,
+    DOMHTMLIFrameElementK                   ,
+    toDOMHTMLIFrameElement                  ,
+    noDOMHTMLIFrameElement                  ,
+
+
+ -- * Methods
+-- ** dOMHTMLIFrameElementGetAlign
+    dOMHTMLIFrameElementGetAlign            ,
+
+
+-- ** dOMHTMLIFrameElementGetContentDocument
+    dOMHTMLIFrameElementGetContentDocument  ,
+
+
+-- ** dOMHTMLIFrameElementGetContentWindow
+    dOMHTMLIFrameElementGetContentWindow    ,
+
+
+-- ** dOMHTMLIFrameElementGetFrameBorder
+    dOMHTMLIFrameElementGetFrameBorder      ,
+
+
+-- ** dOMHTMLIFrameElementGetHeight
+    dOMHTMLIFrameElementGetHeight           ,
+
+
+-- ** dOMHTMLIFrameElementGetLongDesc
+    dOMHTMLIFrameElementGetLongDesc         ,
+
+
+-- ** dOMHTMLIFrameElementGetMarginHeight
+    dOMHTMLIFrameElementGetMarginHeight     ,
+
+
+-- ** dOMHTMLIFrameElementGetMarginWidth
+    dOMHTMLIFrameElementGetMarginWidth      ,
+
+
+-- ** dOMHTMLIFrameElementGetName
+    dOMHTMLIFrameElementGetName             ,
+
+
+-- ** dOMHTMLIFrameElementGetScrolling
+    dOMHTMLIFrameElementGetScrolling        ,
+
+
+-- ** dOMHTMLIFrameElementGetSrc
+    dOMHTMLIFrameElementGetSrc              ,
+
+
+-- ** dOMHTMLIFrameElementGetWidth
+    dOMHTMLIFrameElementGetWidth            ,
+
+
+-- ** dOMHTMLIFrameElementSetAlign
+    dOMHTMLIFrameElementSetAlign            ,
+
+
+-- ** dOMHTMLIFrameElementSetFrameBorder
+    dOMHTMLIFrameElementSetFrameBorder      ,
+
+
+-- ** dOMHTMLIFrameElementSetHeight
+    dOMHTMLIFrameElementSetHeight           ,
+
+
+-- ** dOMHTMLIFrameElementSetLongDesc
+    dOMHTMLIFrameElementSetLongDesc         ,
+
+
+-- ** dOMHTMLIFrameElementSetMarginHeight
+    dOMHTMLIFrameElementSetMarginHeight     ,
+
+
+-- ** dOMHTMLIFrameElementSetMarginWidth
+    dOMHTMLIFrameElementSetMarginWidth      ,
+
+
+-- ** dOMHTMLIFrameElementSetName
+    dOMHTMLIFrameElementSetName             ,
+
+
+-- ** dOMHTMLIFrameElementSetScrolling
+    dOMHTMLIFrameElementSetScrolling        ,
+
+
+-- ** dOMHTMLIFrameElementSetSrc
+    dOMHTMLIFrameElementSetSrc              ,
+
+
+-- ** dOMHTMLIFrameElementSetWidth
+    dOMHTMLIFrameElementSetWidth            ,
+
+
+
+
+ -- * Properties
+-- ** Align
+    DOMHTMLIFrameElementAlignPropertyInfo   ,
+    constructDOMHTMLIFrameElementAlign      ,
+    getDOMHTMLIFrameElementAlign            ,
+    setDOMHTMLIFrameElementAlign            ,
+
+
+-- ** ContentDocument
+    DOMHTMLIFrameElementContentDocumentPropertyInfo,
+    getDOMHTMLIFrameElementContentDocument  ,
+
+
+-- ** ContentWindow
+    DOMHTMLIFrameElementContentWindowPropertyInfo,
+    getDOMHTMLIFrameElementContentWindow    ,
+
+
+-- ** FrameBorder
+    DOMHTMLIFrameElementFrameBorderPropertyInfo,
+    constructDOMHTMLIFrameElementFrameBorder,
+    getDOMHTMLIFrameElementFrameBorder      ,
+    setDOMHTMLIFrameElementFrameBorder      ,
+
+
+-- ** Height
+    DOMHTMLIFrameElementHeightPropertyInfo  ,
+    constructDOMHTMLIFrameElementHeight     ,
+    getDOMHTMLIFrameElementHeight           ,
+    setDOMHTMLIFrameElementHeight           ,
+
+
+-- ** LongDesc
+    DOMHTMLIFrameElementLongDescPropertyInfo,
+    constructDOMHTMLIFrameElementLongDesc   ,
+    getDOMHTMLIFrameElementLongDesc         ,
+    setDOMHTMLIFrameElementLongDesc         ,
+
+
+-- ** MarginHeight
+    DOMHTMLIFrameElementMarginHeightPropertyInfo,
+    constructDOMHTMLIFrameElementMarginHeight,
+    getDOMHTMLIFrameElementMarginHeight     ,
+    setDOMHTMLIFrameElementMarginHeight     ,
+
+
+-- ** MarginWidth
+    DOMHTMLIFrameElementMarginWidthPropertyInfo,
+    constructDOMHTMLIFrameElementMarginWidth,
+    getDOMHTMLIFrameElementMarginWidth      ,
+    setDOMHTMLIFrameElementMarginWidth      ,
+
+
+-- ** Name
+    DOMHTMLIFrameElementNamePropertyInfo    ,
+    constructDOMHTMLIFrameElementName       ,
+    getDOMHTMLIFrameElementName             ,
+    setDOMHTMLIFrameElementName             ,
+
+
+-- ** Sandbox
+    DOMHTMLIFrameElementSandboxPropertyInfo ,
+    constructDOMHTMLIFrameElementSandbox    ,
+    getDOMHTMLIFrameElementSandbox          ,
+    setDOMHTMLIFrameElementSandbox          ,
+
+
+-- ** Scrolling
+    DOMHTMLIFrameElementScrollingPropertyInfo,
+    constructDOMHTMLIFrameElementScrolling  ,
+    getDOMHTMLIFrameElementScrolling        ,
+    setDOMHTMLIFrameElementScrolling        ,
+
+
+-- ** Src
+    DOMHTMLIFrameElementSrcPropertyInfo     ,
+    constructDOMHTMLIFrameElementSrc        ,
+    getDOMHTMLIFrameElementSrc              ,
+    setDOMHTMLIFrameElementSrc              ,
+
+
+-- ** Srcdoc
+    DOMHTMLIFrameElementSrcdocPropertyInfo  ,
+    constructDOMHTMLIFrameElementSrcdoc     ,
+    getDOMHTMLIFrameElementSrcdoc           ,
+    setDOMHTMLIFrameElementSrcdoc           ,
+
+
+-- ** Width
+    DOMHTMLIFrameElementWidthPropertyInfo   ,
+    constructDOMHTMLIFrameElementWidth      ,
+    getDOMHTMLIFrameElementWidth            ,
+    setDOMHTMLIFrameElementWidth            ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLIFrameElement = DOMHTMLIFrameElement (ForeignPtr DOMHTMLIFrameElement)
+foreign import ccall "webkit_dom_html_iframe_element_get_type"
+    c_webkit_dom_html_iframe_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLIFrameElement = DOMHTMLIFrameElementParentTypes
+type DOMHTMLIFrameElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLIFrameElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_iframe_element_get_type
+    
+
+class GObject o => DOMHTMLIFrameElementK o
+instance (GObject o, IsDescendantOf DOMHTMLIFrameElement o) => DOMHTMLIFrameElementK o
+
+toDOMHTMLIFrameElement :: DOMHTMLIFrameElementK o => o -> IO DOMHTMLIFrameElement
+toDOMHTMLIFrameElement = unsafeCastTo DOMHTMLIFrameElement
+
+noDOMHTMLIFrameElement :: Maybe DOMHTMLIFrameElement
+noDOMHTMLIFrameElement = Nothing
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLIFrameElementAlign :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> m T.Text
+getDOMHTMLIFrameElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLIFrameElementAlign :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLIFrameElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLIFrameElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLIFrameElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLIFrameElementAlignPropertyInfo
+instance AttrInfo DOMHTMLIFrameElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLIFrameElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLIFrameElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLIFrameElementAlignPropertyInfo = DOMHTMLIFrameElementK
+    type AttrGetType DOMHTMLIFrameElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLIFrameElementAlignPropertyInfo = "DOMHTMLIFrameElement::align"
+    attrGet _ = getDOMHTMLIFrameElementAlign
+    attrSet _ = setDOMHTMLIFrameElementAlign
+    attrConstruct _ = constructDOMHTMLIFrameElementAlign
+
+-- VVV Prop "content-document"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDocument"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLIFrameElementContentDocument :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> m DOMDocument
+getDOMHTMLIFrameElementContentDocument obj = liftIO $ getObjectPropertyObject obj "content-document" DOMDocument
+
+data DOMHTMLIFrameElementContentDocumentPropertyInfo
+instance AttrInfo DOMHTMLIFrameElementContentDocumentPropertyInfo where
+    type AttrAllowedOps DOMHTMLIFrameElementContentDocumentPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLIFrameElementContentDocumentPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLIFrameElementContentDocumentPropertyInfo = DOMHTMLIFrameElementK
+    type AttrGetType DOMHTMLIFrameElementContentDocumentPropertyInfo = DOMDocument
+    type AttrLabel DOMHTMLIFrameElementContentDocumentPropertyInfo = "DOMHTMLIFrameElement::content-document"
+    attrGet _ = getDOMHTMLIFrameElementContentDocument
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "content-window"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDOMWindow"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLIFrameElementContentWindow :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> m DOMDOMWindow
+getDOMHTMLIFrameElementContentWindow obj = liftIO $ getObjectPropertyObject obj "content-window" DOMDOMWindow
+
+data DOMHTMLIFrameElementContentWindowPropertyInfo
+instance AttrInfo DOMHTMLIFrameElementContentWindowPropertyInfo where
+    type AttrAllowedOps DOMHTMLIFrameElementContentWindowPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLIFrameElementContentWindowPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLIFrameElementContentWindowPropertyInfo = DOMHTMLIFrameElementK
+    type AttrGetType DOMHTMLIFrameElementContentWindowPropertyInfo = DOMDOMWindow
+    type AttrLabel DOMHTMLIFrameElementContentWindowPropertyInfo = "DOMHTMLIFrameElement::content-window"
+    attrGet _ = getDOMHTMLIFrameElementContentWindow
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "frame-border"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLIFrameElementFrameBorder :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> m T.Text
+getDOMHTMLIFrameElementFrameBorder obj = liftIO $ getObjectPropertyString obj "frame-border"
+
+setDOMHTMLIFrameElementFrameBorder :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLIFrameElementFrameBorder obj val = liftIO $ setObjectPropertyString obj "frame-border" val
+
+constructDOMHTMLIFrameElementFrameBorder :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLIFrameElementFrameBorder val = constructObjectPropertyString "frame-border" val
+
+data DOMHTMLIFrameElementFrameBorderPropertyInfo
+instance AttrInfo DOMHTMLIFrameElementFrameBorderPropertyInfo where
+    type AttrAllowedOps DOMHTMLIFrameElementFrameBorderPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLIFrameElementFrameBorderPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLIFrameElementFrameBorderPropertyInfo = DOMHTMLIFrameElementK
+    type AttrGetType DOMHTMLIFrameElementFrameBorderPropertyInfo = T.Text
+    type AttrLabel DOMHTMLIFrameElementFrameBorderPropertyInfo = "DOMHTMLIFrameElement::frame-border"
+    attrGet _ = getDOMHTMLIFrameElementFrameBorder
+    attrSet _ = setDOMHTMLIFrameElementFrameBorder
+    attrConstruct _ = constructDOMHTMLIFrameElementFrameBorder
+
+-- VVV Prop "height"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLIFrameElementHeight :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> m T.Text
+getDOMHTMLIFrameElementHeight obj = liftIO $ getObjectPropertyString obj "height"
+
+setDOMHTMLIFrameElementHeight :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLIFrameElementHeight obj val = liftIO $ setObjectPropertyString obj "height" val
+
+constructDOMHTMLIFrameElementHeight :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLIFrameElementHeight val = constructObjectPropertyString "height" val
+
+data DOMHTMLIFrameElementHeightPropertyInfo
+instance AttrInfo DOMHTMLIFrameElementHeightPropertyInfo where
+    type AttrAllowedOps DOMHTMLIFrameElementHeightPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLIFrameElementHeightPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLIFrameElementHeightPropertyInfo = DOMHTMLIFrameElementK
+    type AttrGetType DOMHTMLIFrameElementHeightPropertyInfo = T.Text
+    type AttrLabel DOMHTMLIFrameElementHeightPropertyInfo = "DOMHTMLIFrameElement::height"
+    attrGet _ = getDOMHTMLIFrameElementHeight
+    attrSet _ = setDOMHTMLIFrameElementHeight
+    attrConstruct _ = constructDOMHTMLIFrameElementHeight
+
+-- VVV Prop "long-desc"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLIFrameElementLongDesc :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> m T.Text
+getDOMHTMLIFrameElementLongDesc obj = liftIO $ getObjectPropertyString obj "long-desc"
+
+setDOMHTMLIFrameElementLongDesc :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLIFrameElementLongDesc obj val = liftIO $ setObjectPropertyString obj "long-desc" val
+
+constructDOMHTMLIFrameElementLongDesc :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLIFrameElementLongDesc val = constructObjectPropertyString "long-desc" val
+
+data DOMHTMLIFrameElementLongDescPropertyInfo
+instance AttrInfo DOMHTMLIFrameElementLongDescPropertyInfo where
+    type AttrAllowedOps DOMHTMLIFrameElementLongDescPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLIFrameElementLongDescPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLIFrameElementLongDescPropertyInfo = DOMHTMLIFrameElementK
+    type AttrGetType DOMHTMLIFrameElementLongDescPropertyInfo = T.Text
+    type AttrLabel DOMHTMLIFrameElementLongDescPropertyInfo = "DOMHTMLIFrameElement::long-desc"
+    attrGet _ = getDOMHTMLIFrameElementLongDesc
+    attrSet _ = setDOMHTMLIFrameElementLongDesc
+    attrConstruct _ = constructDOMHTMLIFrameElementLongDesc
+
+-- VVV Prop "margin-height"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLIFrameElementMarginHeight :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> m T.Text
+getDOMHTMLIFrameElementMarginHeight obj = liftIO $ getObjectPropertyString obj "margin-height"
+
+setDOMHTMLIFrameElementMarginHeight :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLIFrameElementMarginHeight obj val = liftIO $ setObjectPropertyString obj "margin-height" val
+
+constructDOMHTMLIFrameElementMarginHeight :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLIFrameElementMarginHeight val = constructObjectPropertyString "margin-height" val
+
+data DOMHTMLIFrameElementMarginHeightPropertyInfo
+instance AttrInfo DOMHTMLIFrameElementMarginHeightPropertyInfo where
+    type AttrAllowedOps DOMHTMLIFrameElementMarginHeightPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLIFrameElementMarginHeightPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLIFrameElementMarginHeightPropertyInfo = DOMHTMLIFrameElementK
+    type AttrGetType DOMHTMLIFrameElementMarginHeightPropertyInfo = T.Text
+    type AttrLabel DOMHTMLIFrameElementMarginHeightPropertyInfo = "DOMHTMLIFrameElement::margin-height"
+    attrGet _ = getDOMHTMLIFrameElementMarginHeight
+    attrSet _ = setDOMHTMLIFrameElementMarginHeight
+    attrConstruct _ = constructDOMHTMLIFrameElementMarginHeight
+
+-- VVV Prop "margin-width"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLIFrameElementMarginWidth :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> m T.Text
+getDOMHTMLIFrameElementMarginWidth obj = liftIO $ getObjectPropertyString obj "margin-width"
+
+setDOMHTMLIFrameElementMarginWidth :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLIFrameElementMarginWidth obj val = liftIO $ setObjectPropertyString obj "margin-width" val
+
+constructDOMHTMLIFrameElementMarginWidth :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLIFrameElementMarginWidth val = constructObjectPropertyString "margin-width" val
+
+data DOMHTMLIFrameElementMarginWidthPropertyInfo
+instance AttrInfo DOMHTMLIFrameElementMarginWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLIFrameElementMarginWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLIFrameElementMarginWidthPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLIFrameElementMarginWidthPropertyInfo = DOMHTMLIFrameElementK
+    type AttrGetType DOMHTMLIFrameElementMarginWidthPropertyInfo = T.Text
+    type AttrLabel DOMHTMLIFrameElementMarginWidthPropertyInfo = "DOMHTMLIFrameElement::margin-width"
+    attrGet _ = getDOMHTMLIFrameElementMarginWidth
+    attrSet _ = setDOMHTMLIFrameElementMarginWidth
+    attrConstruct _ = constructDOMHTMLIFrameElementMarginWidth
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLIFrameElementName :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> m T.Text
+getDOMHTMLIFrameElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLIFrameElementName :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLIFrameElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLIFrameElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLIFrameElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLIFrameElementNamePropertyInfo
+instance AttrInfo DOMHTMLIFrameElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLIFrameElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLIFrameElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLIFrameElementNamePropertyInfo = DOMHTMLIFrameElementK
+    type AttrGetType DOMHTMLIFrameElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLIFrameElementNamePropertyInfo = "DOMHTMLIFrameElement::name"
+    attrGet _ = getDOMHTMLIFrameElementName
+    attrSet _ = setDOMHTMLIFrameElementName
+    attrConstruct _ = constructDOMHTMLIFrameElementName
+
+-- VVV Prop "sandbox"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLIFrameElementSandbox :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> m T.Text
+getDOMHTMLIFrameElementSandbox obj = liftIO $ getObjectPropertyString obj "sandbox"
+
+setDOMHTMLIFrameElementSandbox :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLIFrameElementSandbox obj val = liftIO $ setObjectPropertyString obj "sandbox" val
+
+constructDOMHTMLIFrameElementSandbox :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLIFrameElementSandbox val = constructObjectPropertyString "sandbox" val
+
+data DOMHTMLIFrameElementSandboxPropertyInfo
+instance AttrInfo DOMHTMLIFrameElementSandboxPropertyInfo where
+    type AttrAllowedOps DOMHTMLIFrameElementSandboxPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLIFrameElementSandboxPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLIFrameElementSandboxPropertyInfo = DOMHTMLIFrameElementK
+    type AttrGetType DOMHTMLIFrameElementSandboxPropertyInfo = T.Text
+    type AttrLabel DOMHTMLIFrameElementSandboxPropertyInfo = "DOMHTMLIFrameElement::sandbox"
+    attrGet _ = getDOMHTMLIFrameElementSandbox
+    attrSet _ = setDOMHTMLIFrameElementSandbox
+    attrConstruct _ = constructDOMHTMLIFrameElementSandbox
+
+-- VVV Prop "scrolling"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLIFrameElementScrolling :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> m T.Text
+getDOMHTMLIFrameElementScrolling obj = liftIO $ getObjectPropertyString obj "scrolling"
+
+setDOMHTMLIFrameElementScrolling :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLIFrameElementScrolling obj val = liftIO $ setObjectPropertyString obj "scrolling" val
+
+constructDOMHTMLIFrameElementScrolling :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLIFrameElementScrolling val = constructObjectPropertyString "scrolling" val
+
+data DOMHTMLIFrameElementScrollingPropertyInfo
+instance AttrInfo DOMHTMLIFrameElementScrollingPropertyInfo where
+    type AttrAllowedOps DOMHTMLIFrameElementScrollingPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLIFrameElementScrollingPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLIFrameElementScrollingPropertyInfo = DOMHTMLIFrameElementK
+    type AttrGetType DOMHTMLIFrameElementScrollingPropertyInfo = T.Text
+    type AttrLabel DOMHTMLIFrameElementScrollingPropertyInfo = "DOMHTMLIFrameElement::scrolling"
+    attrGet _ = getDOMHTMLIFrameElementScrolling
+    attrSet _ = setDOMHTMLIFrameElementScrolling
+    attrConstruct _ = constructDOMHTMLIFrameElementScrolling
+
+-- VVV Prop "src"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLIFrameElementSrc :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> m T.Text
+getDOMHTMLIFrameElementSrc obj = liftIO $ getObjectPropertyString obj "src"
+
+setDOMHTMLIFrameElementSrc :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLIFrameElementSrc obj val = liftIO $ setObjectPropertyString obj "src" val
+
+constructDOMHTMLIFrameElementSrc :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLIFrameElementSrc val = constructObjectPropertyString "src" val
+
+data DOMHTMLIFrameElementSrcPropertyInfo
+instance AttrInfo DOMHTMLIFrameElementSrcPropertyInfo where
+    type AttrAllowedOps DOMHTMLIFrameElementSrcPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLIFrameElementSrcPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLIFrameElementSrcPropertyInfo = DOMHTMLIFrameElementK
+    type AttrGetType DOMHTMLIFrameElementSrcPropertyInfo = T.Text
+    type AttrLabel DOMHTMLIFrameElementSrcPropertyInfo = "DOMHTMLIFrameElement::src"
+    attrGet _ = getDOMHTMLIFrameElementSrc
+    attrSet _ = setDOMHTMLIFrameElementSrc
+    attrConstruct _ = constructDOMHTMLIFrameElementSrc
+
+-- VVV Prop "srcdoc"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLIFrameElementSrcdoc :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> m T.Text
+getDOMHTMLIFrameElementSrcdoc obj = liftIO $ getObjectPropertyString obj "srcdoc"
+
+setDOMHTMLIFrameElementSrcdoc :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLIFrameElementSrcdoc obj val = liftIO $ setObjectPropertyString obj "srcdoc" val
+
+constructDOMHTMLIFrameElementSrcdoc :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLIFrameElementSrcdoc val = constructObjectPropertyString "srcdoc" val
+
+data DOMHTMLIFrameElementSrcdocPropertyInfo
+instance AttrInfo DOMHTMLIFrameElementSrcdocPropertyInfo where
+    type AttrAllowedOps DOMHTMLIFrameElementSrcdocPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLIFrameElementSrcdocPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLIFrameElementSrcdocPropertyInfo = DOMHTMLIFrameElementK
+    type AttrGetType DOMHTMLIFrameElementSrcdocPropertyInfo = T.Text
+    type AttrLabel DOMHTMLIFrameElementSrcdocPropertyInfo = "DOMHTMLIFrameElement::srcdoc"
+    attrGet _ = getDOMHTMLIFrameElementSrcdoc
+    attrSet _ = setDOMHTMLIFrameElementSrcdoc
+    attrConstruct _ = constructDOMHTMLIFrameElementSrcdoc
+
+-- VVV Prop "width"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLIFrameElementWidth :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> m T.Text
+getDOMHTMLIFrameElementWidth obj = liftIO $ getObjectPropertyString obj "width"
+
+setDOMHTMLIFrameElementWidth :: (MonadIO m, DOMHTMLIFrameElementK o) => o -> T.Text -> m ()
+setDOMHTMLIFrameElementWidth obj val = liftIO $ setObjectPropertyString obj "width" val
+
+constructDOMHTMLIFrameElementWidth :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLIFrameElementWidth val = constructObjectPropertyString "width" val
+
+data DOMHTMLIFrameElementWidthPropertyInfo
+instance AttrInfo DOMHTMLIFrameElementWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLIFrameElementWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLIFrameElementWidthPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLIFrameElementWidthPropertyInfo = DOMHTMLIFrameElementK
+    type AttrGetType DOMHTMLIFrameElementWidthPropertyInfo = T.Text
+    type AttrLabel DOMHTMLIFrameElementWidthPropertyInfo = "DOMHTMLIFrameElement::width"
+    attrGet _ = getDOMHTMLIFrameElementWidth
+    attrSet _ = setDOMHTMLIFrameElementWidth
+    attrConstruct _ = constructDOMHTMLIFrameElementWidth
+
+type instance AttributeList DOMHTMLIFrameElement = DOMHTMLIFrameElementAttributeList
+type DOMHTMLIFrameElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLIFrameElementAlignPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-document", DOMHTMLIFrameElementContentDocumentPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("content-window", DOMHTMLIFrameElementContentWindowPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("frame-border", DOMHTMLIFrameElementFrameBorderPropertyInfo), '("height", DOMHTMLIFrameElementHeightPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("long-desc", DOMHTMLIFrameElementLongDescPropertyInfo), '("margin-height", DOMHTMLIFrameElementMarginHeightPropertyInfo), '("margin-width", DOMHTMLIFrameElementMarginWidthPropertyInfo), '("name", DOMHTMLIFrameElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("sandbox", DOMHTMLIFrameElementSandboxPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("scrolling", DOMHTMLIFrameElementScrollingPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("src", DOMHTMLIFrameElementSrcPropertyInfo), '("srcdoc", DOMHTMLIFrameElementSrcdocPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("width", DOMHTMLIFrameElementWidthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLIFrameElement = DOMHTMLIFrameElementSignalList
+type DOMHTMLIFrameElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLIFrameElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_get_align" webkit_dom_html_iframe_element_get_align :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    IO CString
+
+
+dOMHTMLIFrameElementGetAlign ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLIFrameElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_iframe_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_iframe_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLIFrameElement::get_content_document
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDocument"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_get_content_document" webkit_dom_html_iframe_element_get_content_document :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    IO (Ptr DOMDocument)
+
+
+dOMHTMLIFrameElementGetContentDocument ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    m DOMDocument
+dOMHTMLIFrameElementGetContentDocument _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_iframe_element_get_content_document _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_iframe_element_get_content_document" result
+    result' <- (newObject DOMDocument) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLIFrameElement::get_content_window
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDOMWindow"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_get_content_window" webkit_dom_html_iframe_element_get_content_window :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    IO (Ptr DOMDOMWindow)
+
+
+dOMHTMLIFrameElementGetContentWindow ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    m DOMDOMWindow
+dOMHTMLIFrameElementGetContentWindow _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_iframe_element_get_content_window _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_iframe_element_get_content_window" result
+    result' <- (wrapObject DOMDOMWindow) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLIFrameElement::get_frame_border
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_get_frame_border" webkit_dom_html_iframe_element_get_frame_border :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    IO CString
+
+
+dOMHTMLIFrameElementGetFrameBorder ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLIFrameElementGetFrameBorder _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_iframe_element_get_frame_border _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_iframe_element_get_frame_border" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLIFrameElement::get_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_get_height" webkit_dom_html_iframe_element_get_height :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    IO CString
+
+
+dOMHTMLIFrameElementGetHeight ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLIFrameElementGetHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_iframe_element_get_height _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_iframe_element_get_height" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLIFrameElement::get_long_desc
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_get_long_desc" webkit_dom_html_iframe_element_get_long_desc :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    IO CString
+
+
+dOMHTMLIFrameElementGetLongDesc ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLIFrameElementGetLongDesc _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_iframe_element_get_long_desc _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_iframe_element_get_long_desc" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLIFrameElement::get_margin_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_get_margin_height" webkit_dom_html_iframe_element_get_margin_height :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    IO CString
+
+
+dOMHTMLIFrameElementGetMarginHeight ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLIFrameElementGetMarginHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_iframe_element_get_margin_height _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_iframe_element_get_margin_height" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLIFrameElement::get_margin_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_get_margin_width" webkit_dom_html_iframe_element_get_margin_width :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    IO CString
+
+
+dOMHTMLIFrameElementGetMarginWidth ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLIFrameElementGetMarginWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_iframe_element_get_margin_width _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_iframe_element_get_margin_width" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLIFrameElement::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_get_name" webkit_dom_html_iframe_element_get_name :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    IO CString
+
+
+dOMHTMLIFrameElementGetName ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLIFrameElementGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_iframe_element_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_iframe_element_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLIFrameElement::get_scrolling
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_get_scrolling" webkit_dom_html_iframe_element_get_scrolling :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    IO CString
+
+
+dOMHTMLIFrameElementGetScrolling ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLIFrameElementGetScrolling _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_iframe_element_get_scrolling _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_iframe_element_get_scrolling" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLIFrameElement::get_src
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_get_src" webkit_dom_html_iframe_element_get_src :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    IO CString
+
+
+dOMHTMLIFrameElementGetSrc ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLIFrameElementGetSrc _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_iframe_element_get_src _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_iframe_element_get_src" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLIFrameElement::get_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_get_width" webkit_dom_html_iframe_element_get_width :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    IO CString
+
+
+dOMHTMLIFrameElementGetWidth ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLIFrameElementGetWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_iframe_element_get_width _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_iframe_element_get_width" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLIFrameElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_set_align" webkit_dom_html_iframe_element_set_align :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLIFrameElementSetAlign ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLIFrameElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_iframe_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLIFrameElement::set_frame_border
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_set_frame_border" webkit_dom_html_iframe_element_set_frame_border :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLIFrameElementSetFrameBorder ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLIFrameElementSetFrameBorder _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_iframe_element_set_frame_border _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLIFrameElement::set_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_set_height" webkit_dom_html_iframe_element_set_height :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLIFrameElementSetHeight ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLIFrameElementSetHeight _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_iframe_element_set_height _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLIFrameElement::set_long_desc
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_set_long_desc" webkit_dom_html_iframe_element_set_long_desc :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLIFrameElementSetLongDesc ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLIFrameElementSetLongDesc _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_iframe_element_set_long_desc _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLIFrameElement::set_margin_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_set_margin_height" webkit_dom_html_iframe_element_set_margin_height :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLIFrameElementSetMarginHeight ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLIFrameElementSetMarginHeight _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_iframe_element_set_margin_height _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLIFrameElement::set_margin_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_set_margin_width" webkit_dom_html_iframe_element_set_margin_width :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLIFrameElementSetMarginWidth ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLIFrameElementSetMarginWidth _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_iframe_element_set_margin_width _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLIFrameElement::set_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_set_name" webkit_dom_html_iframe_element_set_name :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLIFrameElementSetName ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLIFrameElementSetName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_iframe_element_set_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLIFrameElement::set_scrolling
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_set_scrolling" webkit_dom_html_iframe_element_set_scrolling :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLIFrameElementSetScrolling ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLIFrameElementSetScrolling _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_iframe_element_set_scrolling _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLIFrameElement::set_src
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_set_src" webkit_dom_html_iframe_element_set_src :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLIFrameElementSetSrc ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLIFrameElementSetSrc _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_iframe_element_set_src _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLIFrameElement::set_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_iframe_element_set_width" webkit_dom_html_iframe_element_set_width :: 
+    Ptr DOMHTMLIFrameElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLIFrameElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLIFrameElementSetWidth ::
+    (MonadIO m, DOMHTMLIFrameElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLIFrameElementSetWidth _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_iframe_element_set_width _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLIFrameElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLIFrameElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLIFrameElement.hs-boot
@@ -0,0 +1,27 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLIFrameElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLIFrameElement = DOMHTMLIFrameElement (ForeignPtr DOMHTMLIFrameElement)
+instance GObject DOMHTMLIFrameElement where
+class GObject o => DOMHTMLIFrameElementK o
+instance (GObject o, IsDescendantOf DOMHTMLIFrameElement o) => DOMHTMLIFrameElementK o
+data DOMHTMLIFrameElementAlignPropertyInfo
+data DOMHTMLIFrameElementContentDocumentPropertyInfo
+data DOMHTMLIFrameElementContentWindowPropertyInfo
+data DOMHTMLIFrameElementFrameBorderPropertyInfo
+data DOMHTMLIFrameElementHeightPropertyInfo
+data DOMHTMLIFrameElementLongDescPropertyInfo
+data DOMHTMLIFrameElementMarginHeightPropertyInfo
+data DOMHTMLIFrameElementMarginWidthPropertyInfo
+data DOMHTMLIFrameElementNamePropertyInfo
+data DOMHTMLIFrameElementSandboxPropertyInfo
+data DOMHTMLIFrameElementScrollingPropertyInfo
+data DOMHTMLIFrameElementSrcPropertyInfo
+data DOMHTMLIFrameElementSrcdocPropertyInfo
+data DOMHTMLIFrameElementWidthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLImageElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLImageElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLImageElement.hs
@@ -0,0 +1,1635 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLImageElement
+    ( 
+
+-- * Exported types
+    DOMHTMLImageElement(..)                 ,
+    DOMHTMLImageElementK                    ,
+    toDOMHTMLImageElement                   ,
+    noDOMHTMLImageElement                   ,
+
+
+ -- * Methods
+-- ** dOMHTMLImageElementGetAlign
+    dOMHTMLImageElementGetAlign             ,
+
+
+-- ** dOMHTMLImageElementGetAlt
+    dOMHTMLImageElementGetAlt               ,
+
+
+-- ** dOMHTMLImageElementGetBorder
+    dOMHTMLImageElementGetBorder            ,
+
+
+-- ** dOMHTMLImageElementGetComplete
+    dOMHTMLImageElementGetComplete          ,
+
+
+-- ** dOMHTMLImageElementGetHeight
+    dOMHTMLImageElementGetHeight            ,
+
+
+-- ** dOMHTMLImageElementGetHspace
+    dOMHTMLImageElementGetHspace            ,
+
+
+-- ** dOMHTMLImageElementGetIsMap
+    dOMHTMLImageElementGetIsMap             ,
+
+
+-- ** dOMHTMLImageElementGetLongDesc
+    dOMHTMLImageElementGetLongDesc          ,
+
+
+-- ** dOMHTMLImageElementGetLowsrc
+    dOMHTMLImageElementGetLowsrc            ,
+
+
+-- ** dOMHTMLImageElementGetName
+    dOMHTMLImageElementGetName              ,
+
+
+-- ** dOMHTMLImageElementGetNaturalHeight
+    dOMHTMLImageElementGetNaturalHeight     ,
+
+
+-- ** dOMHTMLImageElementGetNaturalWidth
+    dOMHTMLImageElementGetNaturalWidth      ,
+
+
+-- ** dOMHTMLImageElementGetSrc
+    dOMHTMLImageElementGetSrc               ,
+
+
+-- ** dOMHTMLImageElementGetUseMap
+    dOMHTMLImageElementGetUseMap            ,
+
+
+-- ** dOMHTMLImageElementGetVspace
+    dOMHTMLImageElementGetVspace            ,
+
+
+-- ** dOMHTMLImageElementGetWidth
+    dOMHTMLImageElementGetWidth             ,
+
+
+-- ** dOMHTMLImageElementGetX
+    dOMHTMLImageElementGetX                 ,
+
+
+-- ** dOMHTMLImageElementGetY
+    dOMHTMLImageElementGetY                 ,
+
+
+-- ** dOMHTMLImageElementSetAlign
+    dOMHTMLImageElementSetAlign             ,
+
+
+-- ** dOMHTMLImageElementSetAlt
+    dOMHTMLImageElementSetAlt               ,
+
+
+-- ** dOMHTMLImageElementSetBorder
+    dOMHTMLImageElementSetBorder            ,
+
+
+-- ** dOMHTMLImageElementSetHeight
+    dOMHTMLImageElementSetHeight            ,
+
+
+-- ** dOMHTMLImageElementSetHspace
+    dOMHTMLImageElementSetHspace            ,
+
+
+-- ** dOMHTMLImageElementSetIsMap
+    dOMHTMLImageElementSetIsMap             ,
+
+
+-- ** dOMHTMLImageElementSetLongDesc
+    dOMHTMLImageElementSetLongDesc          ,
+
+
+-- ** dOMHTMLImageElementSetLowsrc
+    dOMHTMLImageElementSetLowsrc            ,
+
+
+-- ** dOMHTMLImageElementSetName
+    dOMHTMLImageElementSetName              ,
+
+
+-- ** dOMHTMLImageElementSetSrc
+    dOMHTMLImageElementSetSrc               ,
+
+
+-- ** dOMHTMLImageElementSetUseMap
+    dOMHTMLImageElementSetUseMap            ,
+
+
+-- ** dOMHTMLImageElementSetVspace
+    dOMHTMLImageElementSetVspace            ,
+
+
+-- ** dOMHTMLImageElementSetWidth
+    dOMHTMLImageElementSetWidth             ,
+
+
+
+
+ -- * Properties
+-- ** Align
+    DOMHTMLImageElementAlignPropertyInfo    ,
+    constructDOMHTMLImageElementAlign       ,
+    getDOMHTMLImageElementAlign             ,
+    setDOMHTMLImageElementAlign             ,
+
+
+-- ** Alt
+    DOMHTMLImageElementAltPropertyInfo      ,
+    constructDOMHTMLImageElementAlt         ,
+    getDOMHTMLImageElementAlt               ,
+    setDOMHTMLImageElementAlt               ,
+
+
+-- ** Border
+    DOMHTMLImageElementBorderPropertyInfo   ,
+    constructDOMHTMLImageElementBorder      ,
+    getDOMHTMLImageElementBorder            ,
+    setDOMHTMLImageElementBorder            ,
+
+
+-- ** Complete
+    DOMHTMLImageElementCompletePropertyInfo ,
+    getDOMHTMLImageElementComplete          ,
+
+
+-- ** CrossOrigin
+    DOMHTMLImageElementCrossOriginPropertyInfo,
+    constructDOMHTMLImageElementCrossOrigin ,
+    getDOMHTMLImageElementCrossOrigin       ,
+    setDOMHTMLImageElementCrossOrigin       ,
+
+
+-- ** CurrentSrc
+    DOMHTMLImageElementCurrentSrcPropertyInfo,
+    getDOMHTMLImageElementCurrentSrc        ,
+
+
+-- ** Height
+    DOMHTMLImageElementHeightPropertyInfo   ,
+    constructDOMHTMLImageElementHeight      ,
+    getDOMHTMLImageElementHeight            ,
+    setDOMHTMLImageElementHeight            ,
+
+
+-- ** Hspace
+    DOMHTMLImageElementHspacePropertyInfo   ,
+    constructDOMHTMLImageElementHspace      ,
+    getDOMHTMLImageElementHspace            ,
+    setDOMHTMLImageElementHspace            ,
+
+
+-- ** IsMap
+    DOMHTMLImageElementIsMapPropertyInfo    ,
+    constructDOMHTMLImageElementIsMap       ,
+    getDOMHTMLImageElementIsMap             ,
+    setDOMHTMLImageElementIsMap             ,
+
+
+-- ** LongDesc
+    DOMHTMLImageElementLongDescPropertyInfo ,
+    constructDOMHTMLImageElementLongDesc    ,
+    getDOMHTMLImageElementLongDesc          ,
+    setDOMHTMLImageElementLongDesc          ,
+
+
+-- ** Lowsrc
+    DOMHTMLImageElementLowsrcPropertyInfo   ,
+    constructDOMHTMLImageElementLowsrc      ,
+    getDOMHTMLImageElementLowsrc            ,
+    setDOMHTMLImageElementLowsrc            ,
+
+
+-- ** Name
+    DOMHTMLImageElementNamePropertyInfo     ,
+    constructDOMHTMLImageElementName        ,
+    getDOMHTMLImageElementName              ,
+    setDOMHTMLImageElementName              ,
+
+
+-- ** NaturalHeight
+    DOMHTMLImageElementNaturalHeightPropertyInfo,
+    getDOMHTMLImageElementNaturalHeight     ,
+
+
+-- ** NaturalWidth
+    DOMHTMLImageElementNaturalWidthPropertyInfo,
+    getDOMHTMLImageElementNaturalWidth      ,
+
+
+-- ** Sizes
+    DOMHTMLImageElementSizesPropertyInfo    ,
+    constructDOMHTMLImageElementSizes       ,
+    getDOMHTMLImageElementSizes             ,
+    setDOMHTMLImageElementSizes             ,
+
+
+-- ** Src
+    DOMHTMLImageElementSrcPropertyInfo      ,
+    constructDOMHTMLImageElementSrc         ,
+    getDOMHTMLImageElementSrc               ,
+    setDOMHTMLImageElementSrc               ,
+
+
+-- ** Srcset
+    DOMHTMLImageElementSrcsetPropertyInfo   ,
+    constructDOMHTMLImageElementSrcset      ,
+    getDOMHTMLImageElementSrcset            ,
+    setDOMHTMLImageElementSrcset            ,
+
+
+-- ** UseMap
+    DOMHTMLImageElementUseMapPropertyInfo   ,
+    constructDOMHTMLImageElementUseMap      ,
+    getDOMHTMLImageElementUseMap            ,
+    setDOMHTMLImageElementUseMap            ,
+
+
+-- ** Vspace
+    DOMHTMLImageElementVspacePropertyInfo   ,
+    constructDOMHTMLImageElementVspace      ,
+    getDOMHTMLImageElementVspace            ,
+    setDOMHTMLImageElementVspace            ,
+
+
+-- ** Width
+    DOMHTMLImageElementWidthPropertyInfo    ,
+    constructDOMHTMLImageElementWidth       ,
+    getDOMHTMLImageElementWidth             ,
+    setDOMHTMLImageElementWidth             ,
+
+
+-- ** X
+    DOMHTMLImageElementXPropertyInfo        ,
+    getDOMHTMLImageElementX                 ,
+
+
+-- ** Y
+    DOMHTMLImageElementYPropertyInfo        ,
+    getDOMHTMLImageElementY                 ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLImageElement = DOMHTMLImageElement (ForeignPtr DOMHTMLImageElement)
+foreign import ccall "webkit_dom_html_image_element_get_type"
+    c_webkit_dom_html_image_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLImageElement = DOMHTMLImageElementParentTypes
+type DOMHTMLImageElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLImageElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_image_element_get_type
+    
+
+class GObject o => DOMHTMLImageElementK o
+instance (GObject o, IsDescendantOf DOMHTMLImageElement o) => DOMHTMLImageElementK o
+
+toDOMHTMLImageElement :: DOMHTMLImageElementK o => o -> IO DOMHTMLImageElement
+toDOMHTMLImageElement = unsafeCastTo DOMHTMLImageElement
+
+noDOMHTMLImageElement :: Maybe DOMHTMLImageElement
+noDOMHTMLImageElement = Nothing
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementAlign :: (MonadIO m, DOMHTMLImageElementK o) => o -> m T.Text
+getDOMHTMLImageElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLImageElementAlign :: (MonadIO m, DOMHTMLImageElementK o) => o -> T.Text -> m ()
+setDOMHTMLImageElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLImageElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLImageElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLImageElementAlignPropertyInfo
+instance AttrInfo DOMHTMLImageElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLImageElementAlignPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLImageElementAlignPropertyInfo = "DOMHTMLImageElement::align"
+    attrGet _ = getDOMHTMLImageElementAlign
+    attrSet _ = setDOMHTMLImageElementAlign
+    attrConstruct _ = constructDOMHTMLImageElementAlign
+
+-- VVV Prop "alt"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementAlt :: (MonadIO m, DOMHTMLImageElementK o) => o -> m T.Text
+getDOMHTMLImageElementAlt obj = liftIO $ getObjectPropertyString obj "alt"
+
+setDOMHTMLImageElementAlt :: (MonadIO m, DOMHTMLImageElementK o) => o -> T.Text -> m ()
+setDOMHTMLImageElementAlt obj val = liftIO $ setObjectPropertyString obj "alt" val
+
+constructDOMHTMLImageElementAlt :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLImageElementAlt val = constructObjectPropertyString "alt" val
+
+data DOMHTMLImageElementAltPropertyInfo
+instance AttrInfo DOMHTMLImageElementAltPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementAltPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementAltPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLImageElementAltPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementAltPropertyInfo = T.Text
+    type AttrLabel DOMHTMLImageElementAltPropertyInfo = "DOMHTMLImageElement::alt"
+    attrGet _ = getDOMHTMLImageElementAlt
+    attrSet _ = setDOMHTMLImageElementAlt
+    attrConstruct _ = constructDOMHTMLImageElementAlt
+
+-- VVV Prop "border"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementBorder :: (MonadIO m, DOMHTMLImageElementK o) => o -> m T.Text
+getDOMHTMLImageElementBorder obj = liftIO $ getObjectPropertyString obj "border"
+
+setDOMHTMLImageElementBorder :: (MonadIO m, DOMHTMLImageElementK o) => o -> T.Text -> m ()
+setDOMHTMLImageElementBorder obj val = liftIO $ setObjectPropertyString obj "border" val
+
+constructDOMHTMLImageElementBorder :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLImageElementBorder val = constructObjectPropertyString "border" val
+
+data DOMHTMLImageElementBorderPropertyInfo
+instance AttrInfo DOMHTMLImageElementBorderPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementBorderPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementBorderPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLImageElementBorderPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementBorderPropertyInfo = T.Text
+    type AttrLabel DOMHTMLImageElementBorderPropertyInfo = "DOMHTMLImageElement::border"
+    attrGet _ = getDOMHTMLImageElementBorder
+    attrSet _ = setDOMHTMLImageElementBorder
+    attrConstruct _ = constructDOMHTMLImageElementBorder
+
+-- VVV Prop "complete"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLImageElementComplete :: (MonadIO m, DOMHTMLImageElementK o) => o -> m Bool
+getDOMHTMLImageElementComplete obj = liftIO $ getObjectPropertyBool obj "complete"
+
+data DOMHTMLImageElementCompletePropertyInfo
+instance AttrInfo DOMHTMLImageElementCompletePropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementCompletePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementCompletePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLImageElementCompletePropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementCompletePropertyInfo = Bool
+    type AttrLabel DOMHTMLImageElementCompletePropertyInfo = "DOMHTMLImageElement::complete"
+    attrGet _ = getDOMHTMLImageElementComplete
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "cross-origin"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementCrossOrigin :: (MonadIO m, DOMHTMLImageElementK o) => o -> m T.Text
+getDOMHTMLImageElementCrossOrigin obj = liftIO $ getObjectPropertyString obj "cross-origin"
+
+setDOMHTMLImageElementCrossOrigin :: (MonadIO m, DOMHTMLImageElementK o) => o -> T.Text -> m ()
+setDOMHTMLImageElementCrossOrigin obj val = liftIO $ setObjectPropertyString obj "cross-origin" val
+
+constructDOMHTMLImageElementCrossOrigin :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLImageElementCrossOrigin val = constructObjectPropertyString "cross-origin" val
+
+data DOMHTMLImageElementCrossOriginPropertyInfo
+instance AttrInfo DOMHTMLImageElementCrossOriginPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementCrossOriginPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementCrossOriginPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLImageElementCrossOriginPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementCrossOriginPropertyInfo = T.Text
+    type AttrLabel DOMHTMLImageElementCrossOriginPropertyInfo = "DOMHTMLImageElement::cross-origin"
+    attrGet _ = getDOMHTMLImageElementCrossOrigin
+    attrSet _ = setDOMHTMLImageElementCrossOrigin
+    attrConstruct _ = constructDOMHTMLImageElementCrossOrigin
+
+-- VVV Prop "current-src"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLImageElementCurrentSrc :: (MonadIO m, DOMHTMLImageElementK o) => o -> m T.Text
+getDOMHTMLImageElementCurrentSrc obj = liftIO $ getObjectPropertyString obj "current-src"
+
+data DOMHTMLImageElementCurrentSrcPropertyInfo
+instance AttrInfo DOMHTMLImageElementCurrentSrcPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementCurrentSrcPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementCurrentSrcPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLImageElementCurrentSrcPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementCurrentSrcPropertyInfo = T.Text
+    type AttrLabel DOMHTMLImageElementCurrentSrcPropertyInfo = "DOMHTMLImageElement::current-src"
+    attrGet _ = getDOMHTMLImageElementCurrentSrc
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "height"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementHeight :: (MonadIO m, DOMHTMLImageElementK o) => o -> m Int64
+getDOMHTMLImageElementHeight obj = liftIO $ getObjectPropertyInt64 obj "height"
+
+setDOMHTMLImageElementHeight :: (MonadIO m, DOMHTMLImageElementK o) => o -> Int64 -> m ()
+setDOMHTMLImageElementHeight obj val = liftIO $ setObjectPropertyInt64 obj "height" val
+
+constructDOMHTMLImageElementHeight :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLImageElementHeight val = constructObjectPropertyInt64 "height" val
+
+data DOMHTMLImageElementHeightPropertyInfo
+instance AttrInfo DOMHTMLImageElementHeightPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementHeightPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementHeightPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLImageElementHeightPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementHeightPropertyInfo = Int64
+    type AttrLabel DOMHTMLImageElementHeightPropertyInfo = "DOMHTMLImageElement::height"
+    attrGet _ = getDOMHTMLImageElementHeight
+    attrSet _ = setDOMHTMLImageElementHeight
+    attrConstruct _ = constructDOMHTMLImageElementHeight
+
+-- VVV Prop "hspace"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementHspace :: (MonadIO m, DOMHTMLImageElementK o) => o -> m Int64
+getDOMHTMLImageElementHspace obj = liftIO $ getObjectPropertyInt64 obj "hspace"
+
+setDOMHTMLImageElementHspace :: (MonadIO m, DOMHTMLImageElementK o) => o -> Int64 -> m ()
+setDOMHTMLImageElementHspace obj val = liftIO $ setObjectPropertyInt64 obj "hspace" val
+
+constructDOMHTMLImageElementHspace :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLImageElementHspace val = constructObjectPropertyInt64 "hspace" val
+
+data DOMHTMLImageElementHspacePropertyInfo
+instance AttrInfo DOMHTMLImageElementHspacePropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementHspacePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementHspacePropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLImageElementHspacePropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementHspacePropertyInfo = Int64
+    type AttrLabel DOMHTMLImageElementHspacePropertyInfo = "DOMHTMLImageElement::hspace"
+    attrGet _ = getDOMHTMLImageElementHspace
+    attrSet _ = setDOMHTMLImageElementHspace
+    attrConstruct _ = constructDOMHTMLImageElementHspace
+
+-- VVV Prop "is-map"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementIsMap :: (MonadIO m, DOMHTMLImageElementK o) => o -> m Bool
+getDOMHTMLImageElementIsMap obj = liftIO $ getObjectPropertyBool obj "is-map"
+
+setDOMHTMLImageElementIsMap :: (MonadIO m, DOMHTMLImageElementK o) => o -> Bool -> m ()
+setDOMHTMLImageElementIsMap obj val = liftIO $ setObjectPropertyBool obj "is-map" val
+
+constructDOMHTMLImageElementIsMap :: Bool -> IO ([Char], GValue)
+constructDOMHTMLImageElementIsMap val = constructObjectPropertyBool "is-map" val
+
+data DOMHTMLImageElementIsMapPropertyInfo
+instance AttrInfo DOMHTMLImageElementIsMapPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementIsMapPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementIsMapPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLImageElementIsMapPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementIsMapPropertyInfo = Bool
+    type AttrLabel DOMHTMLImageElementIsMapPropertyInfo = "DOMHTMLImageElement::is-map"
+    attrGet _ = getDOMHTMLImageElementIsMap
+    attrSet _ = setDOMHTMLImageElementIsMap
+    attrConstruct _ = constructDOMHTMLImageElementIsMap
+
+-- VVV Prop "long-desc"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementLongDesc :: (MonadIO m, DOMHTMLImageElementK o) => o -> m T.Text
+getDOMHTMLImageElementLongDesc obj = liftIO $ getObjectPropertyString obj "long-desc"
+
+setDOMHTMLImageElementLongDesc :: (MonadIO m, DOMHTMLImageElementK o) => o -> T.Text -> m ()
+setDOMHTMLImageElementLongDesc obj val = liftIO $ setObjectPropertyString obj "long-desc" val
+
+constructDOMHTMLImageElementLongDesc :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLImageElementLongDesc val = constructObjectPropertyString "long-desc" val
+
+data DOMHTMLImageElementLongDescPropertyInfo
+instance AttrInfo DOMHTMLImageElementLongDescPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementLongDescPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementLongDescPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLImageElementLongDescPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementLongDescPropertyInfo = T.Text
+    type AttrLabel DOMHTMLImageElementLongDescPropertyInfo = "DOMHTMLImageElement::long-desc"
+    attrGet _ = getDOMHTMLImageElementLongDesc
+    attrSet _ = setDOMHTMLImageElementLongDesc
+    attrConstruct _ = constructDOMHTMLImageElementLongDesc
+
+-- VVV Prop "lowsrc"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementLowsrc :: (MonadIO m, DOMHTMLImageElementK o) => o -> m T.Text
+getDOMHTMLImageElementLowsrc obj = liftIO $ getObjectPropertyString obj "lowsrc"
+
+setDOMHTMLImageElementLowsrc :: (MonadIO m, DOMHTMLImageElementK o) => o -> T.Text -> m ()
+setDOMHTMLImageElementLowsrc obj val = liftIO $ setObjectPropertyString obj "lowsrc" val
+
+constructDOMHTMLImageElementLowsrc :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLImageElementLowsrc val = constructObjectPropertyString "lowsrc" val
+
+data DOMHTMLImageElementLowsrcPropertyInfo
+instance AttrInfo DOMHTMLImageElementLowsrcPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementLowsrcPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementLowsrcPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLImageElementLowsrcPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementLowsrcPropertyInfo = T.Text
+    type AttrLabel DOMHTMLImageElementLowsrcPropertyInfo = "DOMHTMLImageElement::lowsrc"
+    attrGet _ = getDOMHTMLImageElementLowsrc
+    attrSet _ = setDOMHTMLImageElementLowsrc
+    attrConstruct _ = constructDOMHTMLImageElementLowsrc
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementName :: (MonadIO m, DOMHTMLImageElementK o) => o -> m T.Text
+getDOMHTMLImageElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLImageElementName :: (MonadIO m, DOMHTMLImageElementK o) => o -> T.Text -> m ()
+setDOMHTMLImageElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLImageElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLImageElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLImageElementNamePropertyInfo
+instance AttrInfo DOMHTMLImageElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLImageElementNamePropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLImageElementNamePropertyInfo = "DOMHTMLImageElement::name"
+    attrGet _ = getDOMHTMLImageElementName
+    attrSet _ = setDOMHTMLImageElementName
+    attrConstruct _ = constructDOMHTMLImageElementName
+
+-- VVV Prop "natural-height"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLImageElementNaturalHeight :: (MonadIO m, DOMHTMLImageElementK o) => o -> m Int64
+getDOMHTMLImageElementNaturalHeight obj = liftIO $ getObjectPropertyInt64 obj "natural-height"
+
+data DOMHTMLImageElementNaturalHeightPropertyInfo
+instance AttrInfo DOMHTMLImageElementNaturalHeightPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementNaturalHeightPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementNaturalHeightPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLImageElementNaturalHeightPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementNaturalHeightPropertyInfo = Int64
+    type AttrLabel DOMHTMLImageElementNaturalHeightPropertyInfo = "DOMHTMLImageElement::natural-height"
+    attrGet _ = getDOMHTMLImageElementNaturalHeight
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "natural-width"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLImageElementNaturalWidth :: (MonadIO m, DOMHTMLImageElementK o) => o -> m Int64
+getDOMHTMLImageElementNaturalWidth obj = liftIO $ getObjectPropertyInt64 obj "natural-width"
+
+data DOMHTMLImageElementNaturalWidthPropertyInfo
+instance AttrInfo DOMHTMLImageElementNaturalWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementNaturalWidthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementNaturalWidthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLImageElementNaturalWidthPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementNaturalWidthPropertyInfo = Int64
+    type AttrLabel DOMHTMLImageElementNaturalWidthPropertyInfo = "DOMHTMLImageElement::natural-width"
+    attrGet _ = getDOMHTMLImageElementNaturalWidth
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "sizes"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementSizes :: (MonadIO m, DOMHTMLImageElementK o) => o -> m T.Text
+getDOMHTMLImageElementSizes obj = liftIO $ getObjectPropertyString obj "sizes"
+
+setDOMHTMLImageElementSizes :: (MonadIO m, DOMHTMLImageElementK o) => o -> T.Text -> m ()
+setDOMHTMLImageElementSizes obj val = liftIO $ setObjectPropertyString obj "sizes" val
+
+constructDOMHTMLImageElementSizes :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLImageElementSizes val = constructObjectPropertyString "sizes" val
+
+data DOMHTMLImageElementSizesPropertyInfo
+instance AttrInfo DOMHTMLImageElementSizesPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementSizesPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementSizesPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLImageElementSizesPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementSizesPropertyInfo = T.Text
+    type AttrLabel DOMHTMLImageElementSizesPropertyInfo = "DOMHTMLImageElement::sizes"
+    attrGet _ = getDOMHTMLImageElementSizes
+    attrSet _ = setDOMHTMLImageElementSizes
+    attrConstruct _ = constructDOMHTMLImageElementSizes
+
+-- VVV Prop "src"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementSrc :: (MonadIO m, DOMHTMLImageElementK o) => o -> m T.Text
+getDOMHTMLImageElementSrc obj = liftIO $ getObjectPropertyString obj "src"
+
+setDOMHTMLImageElementSrc :: (MonadIO m, DOMHTMLImageElementK o) => o -> T.Text -> m ()
+setDOMHTMLImageElementSrc obj val = liftIO $ setObjectPropertyString obj "src" val
+
+constructDOMHTMLImageElementSrc :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLImageElementSrc val = constructObjectPropertyString "src" val
+
+data DOMHTMLImageElementSrcPropertyInfo
+instance AttrInfo DOMHTMLImageElementSrcPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementSrcPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementSrcPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLImageElementSrcPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementSrcPropertyInfo = T.Text
+    type AttrLabel DOMHTMLImageElementSrcPropertyInfo = "DOMHTMLImageElement::src"
+    attrGet _ = getDOMHTMLImageElementSrc
+    attrSet _ = setDOMHTMLImageElementSrc
+    attrConstruct _ = constructDOMHTMLImageElementSrc
+
+-- VVV Prop "srcset"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementSrcset :: (MonadIO m, DOMHTMLImageElementK o) => o -> m T.Text
+getDOMHTMLImageElementSrcset obj = liftIO $ getObjectPropertyString obj "srcset"
+
+setDOMHTMLImageElementSrcset :: (MonadIO m, DOMHTMLImageElementK o) => o -> T.Text -> m ()
+setDOMHTMLImageElementSrcset obj val = liftIO $ setObjectPropertyString obj "srcset" val
+
+constructDOMHTMLImageElementSrcset :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLImageElementSrcset val = constructObjectPropertyString "srcset" val
+
+data DOMHTMLImageElementSrcsetPropertyInfo
+instance AttrInfo DOMHTMLImageElementSrcsetPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementSrcsetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementSrcsetPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLImageElementSrcsetPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementSrcsetPropertyInfo = T.Text
+    type AttrLabel DOMHTMLImageElementSrcsetPropertyInfo = "DOMHTMLImageElement::srcset"
+    attrGet _ = getDOMHTMLImageElementSrcset
+    attrSet _ = setDOMHTMLImageElementSrcset
+    attrConstruct _ = constructDOMHTMLImageElementSrcset
+
+-- VVV Prop "use-map"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementUseMap :: (MonadIO m, DOMHTMLImageElementK o) => o -> m T.Text
+getDOMHTMLImageElementUseMap obj = liftIO $ getObjectPropertyString obj "use-map"
+
+setDOMHTMLImageElementUseMap :: (MonadIO m, DOMHTMLImageElementK o) => o -> T.Text -> m ()
+setDOMHTMLImageElementUseMap obj val = liftIO $ setObjectPropertyString obj "use-map" val
+
+constructDOMHTMLImageElementUseMap :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLImageElementUseMap val = constructObjectPropertyString "use-map" val
+
+data DOMHTMLImageElementUseMapPropertyInfo
+instance AttrInfo DOMHTMLImageElementUseMapPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementUseMapPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementUseMapPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLImageElementUseMapPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementUseMapPropertyInfo = T.Text
+    type AttrLabel DOMHTMLImageElementUseMapPropertyInfo = "DOMHTMLImageElement::use-map"
+    attrGet _ = getDOMHTMLImageElementUseMap
+    attrSet _ = setDOMHTMLImageElementUseMap
+    attrConstruct _ = constructDOMHTMLImageElementUseMap
+
+-- VVV Prop "vspace"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementVspace :: (MonadIO m, DOMHTMLImageElementK o) => o -> m Int64
+getDOMHTMLImageElementVspace obj = liftIO $ getObjectPropertyInt64 obj "vspace"
+
+setDOMHTMLImageElementVspace :: (MonadIO m, DOMHTMLImageElementK o) => o -> Int64 -> m ()
+setDOMHTMLImageElementVspace obj val = liftIO $ setObjectPropertyInt64 obj "vspace" val
+
+constructDOMHTMLImageElementVspace :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLImageElementVspace val = constructObjectPropertyInt64 "vspace" val
+
+data DOMHTMLImageElementVspacePropertyInfo
+instance AttrInfo DOMHTMLImageElementVspacePropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementVspacePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementVspacePropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLImageElementVspacePropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementVspacePropertyInfo = Int64
+    type AttrLabel DOMHTMLImageElementVspacePropertyInfo = "DOMHTMLImageElement::vspace"
+    attrGet _ = getDOMHTMLImageElementVspace
+    attrSet _ = setDOMHTMLImageElementVspace
+    attrConstruct _ = constructDOMHTMLImageElementVspace
+
+-- VVV Prop "width"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLImageElementWidth :: (MonadIO m, DOMHTMLImageElementK o) => o -> m Int64
+getDOMHTMLImageElementWidth obj = liftIO $ getObjectPropertyInt64 obj "width"
+
+setDOMHTMLImageElementWidth :: (MonadIO m, DOMHTMLImageElementK o) => o -> Int64 -> m ()
+setDOMHTMLImageElementWidth obj val = liftIO $ setObjectPropertyInt64 obj "width" val
+
+constructDOMHTMLImageElementWidth :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLImageElementWidth val = constructObjectPropertyInt64 "width" val
+
+data DOMHTMLImageElementWidthPropertyInfo
+instance AttrInfo DOMHTMLImageElementWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementWidthPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLImageElementWidthPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementWidthPropertyInfo = Int64
+    type AttrLabel DOMHTMLImageElementWidthPropertyInfo = "DOMHTMLImageElement::width"
+    attrGet _ = getDOMHTMLImageElementWidth
+    attrSet _ = setDOMHTMLImageElementWidth
+    attrConstruct _ = constructDOMHTMLImageElementWidth
+
+-- VVV Prop "x"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLImageElementX :: (MonadIO m, DOMHTMLImageElementK o) => o -> m Int64
+getDOMHTMLImageElementX obj = liftIO $ getObjectPropertyInt64 obj "x"
+
+data DOMHTMLImageElementXPropertyInfo
+instance AttrInfo DOMHTMLImageElementXPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementXPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementXPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLImageElementXPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementXPropertyInfo = Int64
+    type AttrLabel DOMHTMLImageElementXPropertyInfo = "DOMHTMLImageElement::x"
+    attrGet _ = getDOMHTMLImageElementX
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "y"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLImageElementY :: (MonadIO m, DOMHTMLImageElementK o) => o -> m Int64
+getDOMHTMLImageElementY obj = liftIO $ getObjectPropertyInt64 obj "y"
+
+data DOMHTMLImageElementYPropertyInfo
+instance AttrInfo DOMHTMLImageElementYPropertyInfo where
+    type AttrAllowedOps DOMHTMLImageElementYPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLImageElementYPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLImageElementYPropertyInfo = DOMHTMLImageElementK
+    type AttrGetType DOMHTMLImageElementYPropertyInfo = Int64
+    type AttrLabel DOMHTMLImageElementYPropertyInfo = "DOMHTMLImageElement::y"
+    attrGet _ = getDOMHTMLImageElementY
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMHTMLImageElement = DOMHTMLImageElementAttributeList
+type DOMHTMLImageElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLImageElementAlignPropertyInfo), '("alt", DOMHTMLImageElementAltPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("border", DOMHTMLImageElementBorderPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("complete", DOMHTMLImageElementCompletePropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("cross-origin", DOMHTMLImageElementCrossOriginPropertyInfo), '("current-src", DOMHTMLImageElementCurrentSrcPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("height", DOMHTMLImageElementHeightPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("hspace", DOMHTMLImageElementHspacePropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("is-map", DOMHTMLImageElementIsMapPropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("long-desc", DOMHTMLImageElementLongDescPropertyInfo), '("lowsrc", DOMHTMLImageElementLowsrcPropertyInfo), '("name", DOMHTMLImageElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("natural-height", DOMHTMLImageElementNaturalHeightPropertyInfo), '("natural-width", DOMHTMLImageElementNaturalWidthPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("sizes", DOMHTMLImageElementSizesPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("src", DOMHTMLImageElementSrcPropertyInfo), '("srcset", DOMHTMLImageElementSrcsetPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("use-map", DOMHTMLImageElementUseMapPropertyInfo), '("vspace", DOMHTMLImageElementVspacePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("width", DOMHTMLImageElementWidthPropertyInfo), '("x", DOMHTMLImageElementXPropertyInfo), '("y", DOMHTMLImageElementYPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLImageElement = DOMHTMLImageElementSignalList
+type DOMHTMLImageElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLImageElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_align" webkit_dom_html_image_element_get_align :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO CString
+
+
+dOMHTMLImageElementGetAlign ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLImageElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_image_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLImageElement::get_alt
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_alt" webkit_dom_html_image_element_get_alt :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO CString
+
+
+dOMHTMLImageElementGetAlt ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLImageElementGetAlt _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_alt _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_image_element_get_alt" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLImageElement::get_border
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_border" webkit_dom_html_image_element_get_border :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO CString
+
+
+dOMHTMLImageElementGetBorder ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLImageElementGetBorder _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_border _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_image_element_get_border" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLImageElement::get_complete
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_complete" webkit_dom_html_image_element_get_complete :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO CInt
+
+
+dOMHTMLImageElementGetComplete ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLImageElementGetComplete _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_complete _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLImageElement::get_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_height" webkit_dom_html_image_element_get_height :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO Int64
+
+
+dOMHTMLImageElementGetHeight ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLImageElementGetHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_height _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLImageElement::get_hspace
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_hspace" webkit_dom_html_image_element_get_hspace :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO Int64
+
+
+dOMHTMLImageElementGetHspace ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLImageElementGetHspace _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_hspace _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLImageElement::get_is_map
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_is_map" webkit_dom_html_image_element_get_is_map :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO CInt
+
+
+dOMHTMLImageElementGetIsMap ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLImageElementGetIsMap _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_is_map _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLImageElement::get_long_desc
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_long_desc" webkit_dom_html_image_element_get_long_desc :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO CString
+
+
+dOMHTMLImageElementGetLongDesc ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLImageElementGetLongDesc _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_long_desc _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_image_element_get_long_desc" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLImageElement::get_lowsrc
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_lowsrc" webkit_dom_html_image_element_get_lowsrc :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO CString
+
+
+dOMHTMLImageElementGetLowsrc ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLImageElementGetLowsrc _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_lowsrc _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_image_element_get_lowsrc" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLImageElement::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_name" webkit_dom_html_image_element_get_name :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO CString
+
+
+dOMHTMLImageElementGetName ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLImageElementGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_image_element_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLImageElement::get_natural_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_natural_height" webkit_dom_html_image_element_get_natural_height :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO Int64
+
+
+dOMHTMLImageElementGetNaturalHeight ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLImageElementGetNaturalHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_natural_height _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLImageElement::get_natural_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_natural_width" webkit_dom_html_image_element_get_natural_width :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO Int64
+
+
+dOMHTMLImageElementGetNaturalWidth ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLImageElementGetNaturalWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_natural_width _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLImageElement::get_src
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_src" webkit_dom_html_image_element_get_src :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO CString
+
+
+dOMHTMLImageElementGetSrc ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLImageElementGetSrc _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_src _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_image_element_get_src" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLImageElement::get_use_map
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_use_map" webkit_dom_html_image_element_get_use_map :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO CString
+
+
+dOMHTMLImageElementGetUseMap ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLImageElementGetUseMap _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_use_map _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_image_element_get_use_map" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLImageElement::get_vspace
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_vspace" webkit_dom_html_image_element_get_vspace :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO Int64
+
+
+dOMHTMLImageElementGetVspace ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLImageElementGetVspace _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_vspace _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLImageElement::get_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_width" webkit_dom_html_image_element_get_width :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO Int64
+
+
+dOMHTMLImageElementGetWidth ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLImageElementGetWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_width _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLImageElement::get_x
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_x" webkit_dom_html_image_element_get_x :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO Int64
+
+
+dOMHTMLImageElementGetX ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLImageElementGetX _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_x _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLImageElement::get_y
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_get_y" webkit_dom_html_image_element_get_y :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    IO Int64
+
+
+dOMHTMLImageElementGetY ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLImageElementGetY _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_image_element_get_y _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLImageElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_set_align" webkit_dom_html_image_element_set_align :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLImageElementSetAlign ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLImageElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_image_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLImageElement::set_alt
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_set_alt" webkit_dom_html_image_element_set_alt :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLImageElementSetAlt ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLImageElementSetAlt _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_image_element_set_alt _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLImageElement::set_border
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_set_border" webkit_dom_html_image_element_set_border :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLImageElementSetBorder ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLImageElementSetBorder _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_image_element_set_border _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLImageElement::set_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_set_height" webkit_dom_html_image_element_set_height :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLImageElementSetHeight ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLImageElementSetHeight _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_image_element_set_height _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLImageElement::set_hspace
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_set_hspace" webkit_dom_html_image_element_set_hspace :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLImageElementSetHspace ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLImageElementSetHspace _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_image_element_set_hspace _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLImageElement::set_is_map
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_set_is_map" webkit_dom_html_image_element_set_is_map :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLImageElementSetIsMap ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLImageElementSetIsMap _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_image_element_set_is_map _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLImageElement::set_long_desc
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_set_long_desc" webkit_dom_html_image_element_set_long_desc :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLImageElementSetLongDesc ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLImageElementSetLongDesc _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_image_element_set_long_desc _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLImageElement::set_lowsrc
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_set_lowsrc" webkit_dom_html_image_element_set_lowsrc :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLImageElementSetLowsrc ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLImageElementSetLowsrc _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_image_element_set_lowsrc _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLImageElement::set_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_set_name" webkit_dom_html_image_element_set_name :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLImageElementSetName ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLImageElementSetName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_image_element_set_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLImageElement::set_src
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_set_src" webkit_dom_html_image_element_set_src :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLImageElementSetSrc ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLImageElementSetSrc _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_image_element_set_src _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLImageElement::set_use_map
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_set_use_map" webkit_dom_html_image_element_set_use_map :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLImageElementSetUseMap ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLImageElementSetUseMap _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_image_element_set_use_map _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLImageElement::set_vspace
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_set_vspace" webkit_dom_html_image_element_set_vspace :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLImageElementSetVspace ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLImageElementSetVspace _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_image_element_set_vspace _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLImageElement::set_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLImageElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_image_element_set_width" webkit_dom_html_image_element_set_width :: 
+    Ptr DOMHTMLImageElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLImageElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLImageElementSetWidth ::
+    (MonadIO m, DOMHTMLImageElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLImageElementSetWidth _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_image_element_set_width _obj' value
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLImageElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLImageElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLImageElement.hs-boot
@@ -0,0 +1,35 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLImageElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLImageElement = DOMHTMLImageElement (ForeignPtr DOMHTMLImageElement)
+instance GObject DOMHTMLImageElement where
+class GObject o => DOMHTMLImageElementK o
+instance (GObject o, IsDescendantOf DOMHTMLImageElement o) => DOMHTMLImageElementK o
+data DOMHTMLImageElementAlignPropertyInfo
+data DOMHTMLImageElementAltPropertyInfo
+data DOMHTMLImageElementBorderPropertyInfo
+data DOMHTMLImageElementCompletePropertyInfo
+data DOMHTMLImageElementCrossOriginPropertyInfo
+data DOMHTMLImageElementCurrentSrcPropertyInfo
+data DOMHTMLImageElementHeightPropertyInfo
+data DOMHTMLImageElementHspacePropertyInfo
+data DOMHTMLImageElementIsMapPropertyInfo
+data DOMHTMLImageElementLongDescPropertyInfo
+data DOMHTMLImageElementLowsrcPropertyInfo
+data DOMHTMLImageElementNamePropertyInfo
+data DOMHTMLImageElementNaturalHeightPropertyInfo
+data DOMHTMLImageElementNaturalWidthPropertyInfo
+data DOMHTMLImageElementSizesPropertyInfo
+data DOMHTMLImageElementSrcPropertyInfo
+data DOMHTMLImageElementSrcsetPropertyInfo
+data DOMHTMLImageElementUseMapPropertyInfo
+data DOMHTMLImageElementVspacePropertyInfo
+data DOMHTMLImageElementWidthPropertyInfo
+data DOMHTMLImageElementXPropertyInfo
+data DOMHTMLImageElementYPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLInputElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLInputElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLInputElement.hs
@@ -0,0 +1,2756 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLInputElement
+    ( 
+
+-- * Exported types
+    DOMHTMLInputElement(..)                 ,
+    DOMHTMLInputElementK                    ,
+    toDOMHTMLInputElement                   ,
+    noDOMHTMLInputElement                   ,
+
+
+ -- * Methods
+-- ** dOMHTMLInputElementGetAccept
+    dOMHTMLInputElementGetAccept            ,
+
+
+-- ** dOMHTMLInputElementGetAlign
+    dOMHTMLInputElementGetAlign             ,
+
+
+-- ** dOMHTMLInputElementGetAlt
+    dOMHTMLInputElementGetAlt               ,
+
+
+-- ** dOMHTMLInputElementGetAutofocus
+    dOMHTMLInputElementGetAutofocus         ,
+
+
+-- ** dOMHTMLInputElementGetCapture
+    dOMHTMLInputElementGetCapture           ,
+
+
+-- ** dOMHTMLInputElementGetChecked
+    dOMHTMLInputElementGetChecked           ,
+
+
+-- ** dOMHTMLInputElementGetDefaultChecked
+    dOMHTMLInputElementGetDefaultChecked    ,
+
+
+-- ** dOMHTMLInputElementGetDefaultValue
+    dOMHTMLInputElementGetDefaultValue      ,
+
+
+-- ** dOMHTMLInputElementGetDisabled
+    dOMHTMLInputElementGetDisabled          ,
+
+
+-- ** dOMHTMLInputElementGetFiles
+    dOMHTMLInputElementGetFiles             ,
+
+
+-- ** dOMHTMLInputElementGetForm
+    dOMHTMLInputElementGetForm              ,
+
+
+-- ** dOMHTMLInputElementGetHeight
+    dOMHTMLInputElementGetHeight            ,
+
+
+-- ** dOMHTMLInputElementGetIndeterminate
+    dOMHTMLInputElementGetIndeterminate     ,
+
+
+-- ** dOMHTMLInputElementGetInputType
+    dOMHTMLInputElementGetInputType         ,
+
+
+-- ** dOMHTMLInputElementGetMaxLength
+    dOMHTMLInputElementGetMaxLength         ,
+
+
+-- ** dOMHTMLInputElementGetMultiple
+    dOMHTMLInputElementGetMultiple          ,
+
+
+-- ** dOMHTMLInputElementGetName
+    dOMHTMLInputElementGetName              ,
+
+
+-- ** dOMHTMLInputElementGetSize
+    dOMHTMLInputElementGetSize              ,
+
+
+-- ** dOMHTMLInputElementGetSrc
+    dOMHTMLInputElementGetSrc               ,
+
+
+-- ** dOMHTMLInputElementGetUseMap
+    dOMHTMLInputElementGetUseMap            ,
+
+
+-- ** dOMHTMLInputElementGetValue
+    dOMHTMLInputElementGetValue             ,
+
+
+-- ** dOMHTMLInputElementGetWidth
+    dOMHTMLInputElementGetWidth             ,
+
+
+-- ** dOMHTMLInputElementGetWillValidate
+    dOMHTMLInputElementGetWillValidate      ,
+
+
+-- ** dOMHTMLInputElementIsEdited
+    dOMHTMLInputElementIsEdited             ,
+
+
+-- ** dOMHTMLInputElementSelect
+    dOMHTMLInputElementSelect               ,
+
+
+-- ** dOMHTMLInputElementSetAccept
+    dOMHTMLInputElementSetAccept            ,
+
+
+-- ** dOMHTMLInputElementSetAlign
+    dOMHTMLInputElementSetAlign             ,
+
+
+-- ** dOMHTMLInputElementSetAlt
+    dOMHTMLInputElementSetAlt               ,
+
+
+-- ** dOMHTMLInputElementSetAutofocus
+    dOMHTMLInputElementSetAutofocus         ,
+
+
+-- ** dOMHTMLInputElementSetChecked
+    dOMHTMLInputElementSetChecked           ,
+
+
+-- ** dOMHTMLInputElementSetDefaultValue
+    dOMHTMLInputElementSetDefaultValue      ,
+
+
+-- ** dOMHTMLInputElementSetDisabled
+    dOMHTMLInputElementSetDisabled          ,
+
+
+-- ** dOMHTMLInputElementSetFiles
+    dOMHTMLInputElementSetFiles             ,
+
+
+-- ** dOMHTMLInputElementSetHeight
+    dOMHTMLInputElementSetHeight            ,
+
+
+-- ** dOMHTMLInputElementSetIndeterminate
+    dOMHTMLInputElementSetIndeterminate     ,
+
+
+-- ** dOMHTMLInputElementSetInputType
+    dOMHTMLInputElementSetInputType         ,
+
+
+-- ** dOMHTMLInputElementSetMaxLength
+    dOMHTMLInputElementSetMaxLength         ,
+
+
+-- ** dOMHTMLInputElementSetMultiple
+    dOMHTMLInputElementSetMultiple          ,
+
+
+-- ** dOMHTMLInputElementSetName
+    dOMHTMLInputElementSetName              ,
+
+
+-- ** dOMHTMLInputElementSetReadOnly
+    dOMHTMLInputElementSetReadOnly          ,
+
+
+-- ** dOMHTMLInputElementSetSize
+    dOMHTMLInputElementSetSize              ,
+
+
+-- ** dOMHTMLInputElementSetSrc
+    dOMHTMLInputElementSetSrc               ,
+
+
+-- ** dOMHTMLInputElementSetUseMap
+    dOMHTMLInputElementSetUseMap            ,
+
+
+-- ** dOMHTMLInputElementSetValue
+    dOMHTMLInputElementSetValue             ,
+
+
+-- ** dOMHTMLInputElementSetWidth
+    dOMHTMLInputElementSetWidth             ,
+
+
+
+
+ -- * Properties
+-- ** Accept
+    DOMHTMLInputElementAcceptPropertyInfo   ,
+    constructDOMHTMLInputElementAccept      ,
+    getDOMHTMLInputElementAccept            ,
+    setDOMHTMLInputElementAccept            ,
+
+
+-- ** Align
+    DOMHTMLInputElementAlignPropertyInfo    ,
+    constructDOMHTMLInputElementAlign       ,
+    getDOMHTMLInputElementAlign             ,
+    setDOMHTMLInputElementAlign             ,
+
+
+-- ** Alt
+    DOMHTMLInputElementAltPropertyInfo      ,
+    constructDOMHTMLInputElementAlt         ,
+    getDOMHTMLInputElementAlt               ,
+    setDOMHTMLInputElementAlt               ,
+
+
+-- ** Autocapitalize
+    DOMHTMLInputElementAutocapitalizePropertyInfo,
+    constructDOMHTMLInputElementAutocapitalize,
+    getDOMHTMLInputElementAutocapitalize    ,
+    setDOMHTMLInputElementAutocapitalize    ,
+
+
+-- ** Autocomplete
+    DOMHTMLInputElementAutocompletePropertyInfo,
+    constructDOMHTMLInputElementAutocomplete,
+    getDOMHTMLInputElementAutocomplete      ,
+    setDOMHTMLInputElementAutocomplete      ,
+
+
+-- ** Autocorrect
+    DOMHTMLInputElementAutocorrectPropertyInfo,
+    constructDOMHTMLInputElementAutocorrect ,
+    getDOMHTMLInputElementAutocorrect       ,
+    setDOMHTMLInputElementAutocorrect       ,
+
+
+-- ** Autofocus
+    DOMHTMLInputElementAutofocusPropertyInfo,
+    constructDOMHTMLInputElementAutofocus   ,
+    getDOMHTMLInputElementAutofocus         ,
+    setDOMHTMLInputElementAutofocus         ,
+
+
+-- ** Capture
+    DOMHTMLInputElementCapturePropertyInfo  ,
+    constructDOMHTMLInputElementCapture     ,
+    getDOMHTMLInputElementCapture           ,
+    setDOMHTMLInputElementCapture           ,
+
+
+-- ** Checked
+    DOMHTMLInputElementCheckedPropertyInfo  ,
+    constructDOMHTMLInputElementChecked     ,
+    getDOMHTMLInputElementChecked           ,
+    setDOMHTMLInputElementChecked           ,
+
+
+-- ** DefaultChecked
+    DOMHTMLInputElementDefaultCheckedPropertyInfo,
+    constructDOMHTMLInputElementDefaultChecked,
+    getDOMHTMLInputElementDefaultChecked    ,
+    setDOMHTMLInputElementDefaultChecked    ,
+
+
+-- ** DefaultValue
+    DOMHTMLInputElementDefaultValuePropertyInfo,
+    constructDOMHTMLInputElementDefaultValue,
+    getDOMHTMLInputElementDefaultValue      ,
+    setDOMHTMLInputElementDefaultValue      ,
+
+
+-- ** DirName
+    DOMHTMLInputElementDirNamePropertyInfo  ,
+    constructDOMHTMLInputElementDirName     ,
+    getDOMHTMLInputElementDirName           ,
+    setDOMHTMLInputElementDirName           ,
+
+
+-- ** Disabled
+    DOMHTMLInputElementDisabledPropertyInfo ,
+    constructDOMHTMLInputElementDisabled    ,
+    getDOMHTMLInputElementDisabled          ,
+    setDOMHTMLInputElementDisabled          ,
+
+
+-- ** Files
+    DOMHTMLInputElementFilesPropertyInfo    ,
+    getDOMHTMLInputElementFiles             ,
+
+
+-- ** Form
+    DOMHTMLInputElementFormPropertyInfo     ,
+    getDOMHTMLInputElementForm              ,
+
+
+-- ** FormAction
+    DOMHTMLInputElementFormActionPropertyInfo,
+    constructDOMHTMLInputElementFormAction  ,
+    getDOMHTMLInputElementFormAction        ,
+    setDOMHTMLInputElementFormAction        ,
+
+
+-- ** FormEnctype
+    DOMHTMLInputElementFormEnctypePropertyInfo,
+    constructDOMHTMLInputElementFormEnctype ,
+    getDOMHTMLInputElementFormEnctype       ,
+    setDOMHTMLInputElementFormEnctype       ,
+
+
+-- ** FormMethod
+    DOMHTMLInputElementFormMethodPropertyInfo,
+    constructDOMHTMLInputElementFormMethod  ,
+    getDOMHTMLInputElementFormMethod        ,
+    setDOMHTMLInputElementFormMethod        ,
+
+
+-- ** FormNoValidate
+    DOMHTMLInputElementFormNoValidatePropertyInfo,
+    constructDOMHTMLInputElementFormNoValidate,
+    getDOMHTMLInputElementFormNoValidate    ,
+    setDOMHTMLInputElementFormNoValidate    ,
+
+
+-- ** FormTarget
+    DOMHTMLInputElementFormTargetPropertyInfo,
+    constructDOMHTMLInputElementFormTarget  ,
+    getDOMHTMLInputElementFormTarget        ,
+    setDOMHTMLInputElementFormTarget        ,
+
+
+-- ** Height
+    DOMHTMLInputElementHeightPropertyInfo   ,
+    constructDOMHTMLInputElementHeight      ,
+    getDOMHTMLInputElementHeight            ,
+    setDOMHTMLInputElementHeight            ,
+
+
+-- ** Incremental
+    DOMHTMLInputElementIncrementalPropertyInfo,
+    constructDOMHTMLInputElementIncremental ,
+    getDOMHTMLInputElementIncremental       ,
+    setDOMHTMLInputElementIncremental       ,
+
+
+-- ** Indeterminate
+    DOMHTMLInputElementIndeterminatePropertyInfo,
+    constructDOMHTMLInputElementIndeterminate,
+    getDOMHTMLInputElementIndeterminate     ,
+    setDOMHTMLInputElementIndeterminate     ,
+
+
+-- ** Labels
+    DOMHTMLInputElementLabelsPropertyInfo   ,
+    getDOMHTMLInputElementLabels            ,
+
+
+-- ** List
+    DOMHTMLInputElementListPropertyInfo     ,
+    getDOMHTMLInputElementList              ,
+
+
+-- ** Max
+    DOMHTMLInputElementMaxPropertyInfo      ,
+    constructDOMHTMLInputElementMax         ,
+    getDOMHTMLInputElementMax               ,
+    setDOMHTMLInputElementMax               ,
+
+
+-- ** MaxLength
+    DOMHTMLInputElementMaxLengthPropertyInfo,
+    constructDOMHTMLInputElementMaxLength   ,
+    getDOMHTMLInputElementMaxLength         ,
+    setDOMHTMLInputElementMaxLength         ,
+
+
+-- ** Min
+    DOMHTMLInputElementMinPropertyInfo      ,
+    constructDOMHTMLInputElementMin         ,
+    getDOMHTMLInputElementMin               ,
+    setDOMHTMLInputElementMin               ,
+
+
+-- ** Multiple
+    DOMHTMLInputElementMultiplePropertyInfo ,
+    constructDOMHTMLInputElementMultiple    ,
+    getDOMHTMLInputElementMultiple          ,
+    setDOMHTMLInputElementMultiple          ,
+
+
+-- ** Name
+    DOMHTMLInputElementNamePropertyInfo     ,
+    constructDOMHTMLInputElementName        ,
+    getDOMHTMLInputElementName              ,
+    setDOMHTMLInputElementName              ,
+
+
+-- ** Pattern
+    DOMHTMLInputElementPatternPropertyInfo  ,
+    constructDOMHTMLInputElementPattern     ,
+    getDOMHTMLInputElementPattern           ,
+    setDOMHTMLInputElementPattern           ,
+
+
+-- ** Placeholder
+    DOMHTMLInputElementPlaceholderPropertyInfo,
+    constructDOMHTMLInputElementPlaceholder ,
+    getDOMHTMLInputElementPlaceholder       ,
+    setDOMHTMLInputElementPlaceholder       ,
+
+
+-- ** ReadOnly
+    DOMHTMLInputElementReadOnlyPropertyInfo ,
+    constructDOMHTMLInputElementReadOnly    ,
+    getDOMHTMLInputElementReadOnly          ,
+    setDOMHTMLInputElementReadOnly          ,
+
+
+-- ** Required
+    DOMHTMLInputElementRequiredPropertyInfo ,
+    constructDOMHTMLInputElementRequired    ,
+    getDOMHTMLInputElementRequired          ,
+    setDOMHTMLInputElementRequired          ,
+
+
+-- ** Size
+    DOMHTMLInputElementSizePropertyInfo     ,
+    constructDOMHTMLInputElementSize        ,
+    getDOMHTMLInputElementSize              ,
+    setDOMHTMLInputElementSize              ,
+
+
+-- ** Src
+    DOMHTMLInputElementSrcPropertyInfo      ,
+    constructDOMHTMLInputElementSrc         ,
+    getDOMHTMLInputElementSrc               ,
+    setDOMHTMLInputElementSrc               ,
+
+
+-- ** Step
+    DOMHTMLInputElementStepPropertyInfo     ,
+    constructDOMHTMLInputElementStep        ,
+    getDOMHTMLInputElementStep              ,
+    setDOMHTMLInputElementStep              ,
+
+
+-- ** Type
+    DOMHTMLInputElementTypePropertyInfo     ,
+    constructDOMHTMLInputElementType        ,
+    getDOMHTMLInputElementType              ,
+    setDOMHTMLInputElementType              ,
+
+
+-- ** UseMap
+    DOMHTMLInputElementUseMapPropertyInfo   ,
+    constructDOMHTMLInputElementUseMap      ,
+    getDOMHTMLInputElementUseMap            ,
+    setDOMHTMLInputElementUseMap            ,
+
+
+-- ** ValidationMessage
+    DOMHTMLInputElementValidationMessagePropertyInfo,
+    getDOMHTMLInputElementValidationMessage ,
+
+
+-- ** Value
+    DOMHTMLInputElementValuePropertyInfo    ,
+    constructDOMHTMLInputElementValue       ,
+    getDOMHTMLInputElementValue             ,
+    setDOMHTMLInputElementValue             ,
+
+
+-- ** ValueAsNumber
+    DOMHTMLInputElementValueAsNumberPropertyInfo,
+    constructDOMHTMLInputElementValueAsNumber,
+    getDOMHTMLInputElementValueAsNumber     ,
+    setDOMHTMLInputElementValueAsNumber     ,
+
+
+-- ** Width
+    DOMHTMLInputElementWidthPropertyInfo    ,
+    constructDOMHTMLInputElementWidth       ,
+    getDOMHTMLInputElementWidth             ,
+    setDOMHTMLInputElementWidth             ,
+
+
+-- ** WillValidate
+    DOMHTMLInputElementWillValidatePropertyInfo,
+    getDOMHTMLInputElementWillValidate      ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLInputElement = DOMHTMLInputElement (ForeignPtr DOMHTMLInputElement)
+foreign import ccall "webkit_dom_html_input_element_get_type"
+    c_webkit_dom_html_input_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLInputElement = DOMHTMLInputElementParentTypes
+type DOMHTMLInputElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLInputElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_input_element_get_type
+    
+
+class GObject o => DOMHTMLInputElementK o
+instance (GObject o, IsDescendantOf DOMHTMLInputElement o) => DOMHTMLInputElementK o
+
+toDOMHTMLInputElement :: DOMHTMLInputElementK o => o -> IO DOMHTMLInputElement
+toDOMHTMLInputElement = unsafeCastTo DOMHTMLInputElement
+
+noDOMHTMLInputElement :: Maybe DOMHTMLInputElement
+noDOMHTMLInputElement = Nothing
+
+-- VVV Prop "accept"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementAccept :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementAccept obj = liftIO $ getObjectPropertyString obj "accept"
+
+setDOMHTMLInputElementAccept :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementAccept obj val = liftIO $ setObjectPropertyString obj "accept" val
+
+constructDOMHTMLInputElementAccept :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementAccept val = constructObjectPropertyString "accept" val
+
+data DOMHTMLInputElementAcceptPropertyInfo
+instance AttrInfo DOMHTMLInputElementAcceptPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementAcceptPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementAcceptPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementAcceptPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementAcceptPropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementAcceptPropertyInfo = "DOMHTMLInputElement::accept"
+    attrGet _ = getDOMHTMLInputElementAccept
+    attrSet _ = setDOMHTMLInputElementAccept
+    attrConstruct _ = constructDOMHTMLInputElementAccept
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementAlign :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLInputElementAlign :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLInputElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLInputElementAlignPropertyInfo
+instance AttrInfo DOMHTMLInputElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementAlignPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementAlignPropertyInfo = "DOMHTMLInputElement::align"
+    attrGet _ = getDOMHTMLInputElementAlign
+    attrSet _ = setDOMHTMLInputElementAlign
+    attrConstruct _ = constructDOMHTMLInputElementAlign
+
+-- VVV Prop "alt"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementAlt :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementAlt obj = liftIO $ getObjectPropertyString obj "alt"
+
+setDOMHTMLInputElementAlt :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementAlt obj val = liftIO $ setObjectPropertyString obj "alt" val
+
+constructDOMHTMLInputElementAlt :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementAlt val = constructObjectPropertyString "alt" val
+
+data DOMHTMLInputElementAltPropertyInfo
+instance AttrInfo DOMHTMLInputElementAltPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementAltPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementAltPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementAltPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementAltPropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementAltPropertyInfo = "DOMHTMLInputElement::alt"
+    attrGet _ = getDOMHTMLInputElementAlt
+    attrSet _ = setDOMHTMLInputElementAlt
+    attrConstruct _ = constructDOMHTMLInputElementAlt
+
+-- VVV Prop "autocapitalize"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementAutocapitalize :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementAutocapitalize obj = liftIO $ getObjectPropertyString obj "autocapitalize"
+
+setDOMHTMLInputElementAutocapitalize :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementAutocapitalize obj val = liftIO $ setObjectPropertyString obj "autocapitalize" val
+
+constructDOMHTMLInputElementAutocapitalize :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementAutocapitalize val = constructObjectPropertyString "autocapitalize" val
+
+data DOMHTMLInputElementAutocapitalizePropertyInfo
+instance AttrInfo DOMHTMLInputElementAutocapitalizePropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementAutocapitalizePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementAutocapitalizePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementAutocapitalizePropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementAutocapitalizePropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementAutocapitalizePropertyInfo = "DOMHTMLInputElement::autocapitalize"
+    attrGet _ = getDOMHTMLInputElementAutocapitalize
+    attrSet _ = setDOMHTMLInputElementAutocapitalize
+    attrConstruct _ = constructDOMHTMLInputElementAutocapitalize
+
+-- VVV Prop "autocomplete"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementAutocomplete :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementAutocomplete obj = liftIO $ getObjectPropertyString obj "autocomplete"
+
+setDOMHTMLInputElementAutocomplete :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementAutocomplete obj val = liftIO $ setObjectPropertyString obj "autocomplete" val
+
+constructDOMHTMLInputElementAutocomplete :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementAutocomplete val = constructObjectPropertyString "autocomplete" val
+
+data DOMHTMLInputElementAutocompletePropertyInfo
+instance AttrInfo DOMHTMLInputElementAutocompletePropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementAutocompletePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementAutocompletePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementAutocompletePropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementAutocompletePropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementAutocompletePropertyInfo = "DOMHTMLInputElement::autocomplete"
+    attrGet _ = getDOMHTMLInputElementAutocomplete
+    attrSet _ = setDOMHTMLInputElementAutocomplete
+    attrConstruct _ = constructDOMHTMLInputElementAutocomplete
+
+-- VVV Prop "autocorrect"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementAutocorrect :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Bool
+getDOMHTMLInputElementAutocorrect obj = liftIO $ getObjectPropertyBool obj "autocorrect"
+
+setDOMHTMLInputElementAutocorrect :: (MonadIO m, DOMHTMLInputElementK o) => o -> Bool -> m ()
+setDOMHTMLInputElementAutocorrect obj val = liftIO $ setObjectPropertyBool obj "autocorrect" val
+
+constructDOMHTMLInputElementAutocorrect :: Bool -> IO ([Char], GValue)
+constructDOMHTMLInputElementAutocorrect val = constructObjectPropertyBool "autocorrect" val
+
+data DOMHTMLInputElementAutocorrectPropertyInfo
+instance AttrInfo DOMHTMLInputElementAutocorrectPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementAutocorrectPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementAutocorrectPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLInputElementAutocorrectPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementAutocorrectPropertyInfo = Bool
+    type AttrLabel DOMHTMLInputElementAutocorrectPropertyInfo = "DOMHTMLInputElement::autocorrect"
+    attrGet _ = getDOMHTMLInputElementAutocorrect
+    attrSet _ = setDOMHTMLInputElementAutocorrect
+    attrConstruct _ = constructDOMHTMLInputElementAutocorrect
+
+-- VVV Prop "autofocus"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementAutofocus :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Bool
+getDOMHTMLInputElementAutofocus obj = liftIO $ getObjectPropertyBool obj "autofocus"
+
+setDOMHTMLInputElementAutofocus :: (MonadIO m, DOMHTMLInputElementK o) => o -> Bool -> m ()
+setDOMHTMLInputElementAutofocus obj val = liftIO $ setObjectPropertyBool obj "autofocus" val
+
+constructDOMHTMLInputElementAutofocus :: Bool -> IO ([Char], GValue)
+constructDOMHTMLInputElementAutofocus val = constructObjectPropertyBool "autofocus" val
+
+data DOMHTMLInputElementAutofocusPropertyInfo
+instance AttrInfo DOMHTMLInputElementAutofocusPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementAutofocusPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementAutofocusPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLInputElementAutofocusPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementAutofocusPropertyInfo = Bool
+    type AttrLabel DOMHTMLInputElementAutofocusPropertyInfo = "DOMHTMLInputElement::autofocus"
+    attrGet _ = getDOMHTMLInputElementAutofocus
+    attrSet _ = setDOMHTMLInputElementAutofocus
+    attrConstruct _ = constructDOMHTMLInputElementAutofocus
+
+-- VVV Prop "capture"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementCapture :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Bool
+getDOMHTMLInputElementCapture obj = liftIO $ getObjectPropertyBool obj "capture"
+
+setDOMHTMLInputElementCapture :: (MonadIO m, DOMHTMLInputElementK o) => o -> Bool -> m ()
+setDOMHTMLInputElementCapture obj val = liftIO $ setObjectPropertyBool obj "capture" val
+
+constructDOMHTMLInputElementCapture :: Bool -> IO ([Char], GValue)
+constructDOMHTMLInputElementCapture val = constructObjectPropertyBool "capture" val
+
+data DOMHTMLInputElementCapturePropertyInfo
+instance AttrInfo DOMHTMLInputElementCapturePropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementCapturePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementCapturePropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLInputElementCapturePropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementCapturePropertyInfo = Bool
+    type AttrLabel DOMHTMLInputElementCapturePropertyInfo = "DOMHTMLInputElement::capture"
+    attrGet _ = getDOMHTMLInputElementCapture
+    attrSet _ = setDOMHTMLInputElementCapture
+    attrConstruct _ = constructDOMHTMLInputElementCapture
+
+-- VVV Prop "checked"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementChecked :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Bool
+getDOMHTMLInputElementChecked obj = liftIO $ getObjectPropertyBool obj "checked"
+
+setDOMHTMLInputElementChecked :: (MonadIO m, DOMHTMLInputElementK o) => o -> Bool -> m ()
+setDOMHTMLInputElementChecked obj val = liftIO $ setObjectPropertyBool obj "checked" val
+
+constructDOMHTMLInputElementChecked :: Bool -> IO ([Char], GValue)
+constructDOMHTMLInputElementChecked val = constructObjectPropertyBool "checked" val
+
+data DOMHTMLInputElementCheckedPropertyInfo
+instance AttrInfo DOMHTMLInputElementCheckedPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementCheckedPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementCheckedPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLInputElementCheckedPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementCheckedPropertyInfo = Bool
+    type AttrLabel DOMHTMLInputElementCheckedPropertyInfo = "DOMHTMLInputElement::checked"
+    attrGet _ = getDOMHTMLInputElementChecked
+    attrSet _ = setDOMHTMLInputElementChecked
+    attrConstruct _ = constructDOMHTMLInputElementChecked
+
+-- VVV Prop "default-checked"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementDefaultChecked :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Bool
+getDOMHTMLInputElementDefaultChecked obj = liftIO $ getObjectPropertyBool obj "default-checked"
+
+setDOMHTMLInputElementDefaultChecked :: (MonadIO m, DOMHTMLInputElementK o) => o -> Bool -> m ()
+setDOMHTMLInputElementDefaultChecked obj val = liftIO $ setObjectPropertyBool obj "default-checked" val
+
+constructDOMHTMLInputElementDefaultChecked :: Bool -> IO ([Char], GValue)
+constructDOMHTMLInputElementDefaultChecked val = constructObjectPropertyBool "default-checked" val
+
+data DOMHTMLInputElementDefaultCheckedPropertyInfo
+instance AttrInfo DOMHTMLInputElementDefaultCheckedPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementDefaultCheckedPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementDefaultCheckedPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLInputElementDefaultCheckedPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementDefaultCheckedPropertyInfo = Bool
+    type AttrLabel DOMHTMLInputElementDefaultCheckedPropertyInfo = "DOMHTMLInputElement::default-checked"
+    attrGet _ = getDOMHTMLInputElementDefaultChecked
+    attrSet _ = setDOMHTMLInputElementDefaultChecked
+    attrConstruct _ = constructDOMHTMLInputElementDefaultChecked
+
+-- VVV Prop "default-value"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementDefaultValue :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementDefaultValue obj = liftIO $ getObjectPropertyString obj "default-value"
+
+setDOMHTMLInputElementDefaultValue :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementDefaultValue obj val = liftIO $ setObjectPropertyString obj "default-value" val
+
+constructDOMHTMLInputElementDefaultValue :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementDefaultValue val = constructObjectPropertyString "default-value" val
+
+data DOMHTMLInputElementDefaultValuePropertyInfo
+instance AttrInfo DOMHTMLInputElementDefaultValuePropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementDefaultValuePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementDefaultValuePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementDefaultValuePropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementDefaultValuePropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementDefaultValuePropertyInfo = "DOMHTMLInputElement::default-value"
+    attrGet _ = getDOMHTMLInputElementDefaultValue
+    attrSet _ = setDOMHTMLInputElementDefaultValue
+    attrConstruct _ = constructDOMHTMLInputElementDefaultValue
+
+-- VVV Prop "dir-name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementDirName :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementDirName obj = liftIO $ getObjectPropertyString obj "dir-name"
+
+setDOMHTMLInputElementDirName :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementDirName obj val = liftIO $ setObjectPropertyString obj "dir-name" val
+
+constructDOMHTMLInputElementDirName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementDirName val = constructObjectPropertyString "dir-name" val
+
+data DOMHTMLInputElementDirNamePropertyInfo
+instance AttrInfo DOMHTMLInputElementDirNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementDirNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementDirNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementDirNamePropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementDirNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementDirNamePropertyInfo = "DOMHTMLInputElement::dir-name"
+    attrGet _ = getDOMHTMLInputElementDirName
+    attrSet _ = setDOMHTMLInputElementDirName
+    attrConstruct _ = constructDOMHTMLInputElementDirName
+
+-- VVV Prop "disabled"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementDisabled :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Bool
+getDOMHTMLInputElementDisabled obj = liftIO $ getObjectPropertyBool obj "disabled"
+
+setDOMHTMLInputElementDisabled :: (MonadIO m, DOMHTMLInputElementK o) => o -> Bool -> m ()
+setDOMHTMLInputElementDisabled obj val = liftIO $ setObjectPropertyBool obj "disabled" val
+
+constructDOMHTMLInputElementDisabled :: Bool -> IO ([Char], GValue)
+constructDOMHTMLInputElementDisabled val = constructObjectPropertyBool "disabled" val
+
+data DOMHTMLInputElementDisabledPropertyInfo
+instance AttrInfo DOMHTMLInputElementDisabledPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementDisabledPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementDisabledPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLInputElementDisabledPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementDisabledPropertyInfo = Bool
+    type AttrLabel DOMHTMLInputElementDisabledPropertyInfo = "DOMHTMLInputElement::disabled"
+    attrGet _ = getDOMHTMLInputElementDisabled
+    attrSet _ = setDOMHTMLInputElementDisabled
+    attrConstruct _ = constructDOMHTMLInputElementDisabled
+
+-- VVV Prop "files"
+   -- Type: TInterface "WebKit2WebExtension" "DOMFileList"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLInputElementFiles :: (MonadIO m, DOMHTMLInputElementK o) => o -> m DOMFileList
+getDOMHTMLInputElementFiles obj = liftIO $ getObjectPropertyObject obj "files" DOMFileList
+
+data DOMHTMLInputElementFilesPropertyInfo
+instance AttrInfo DOMHTMLInputElementFilesPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementFilesPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementFilesPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLInputElementFilesPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementFilesPropertyInfo = DOMFileList
+    type AttrLabel DOMHTMLInputElementFilesPropertyInfo = "DOMHTMLInputElement::files"
+    attrGet _ = getDOMHTMLInputElementFiles
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "form"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLInputElementForm :: (MonadIO m, DOMHTMLInputElementK o) => o -> m DOMHTMLFormElement
+getDOMHTMLInputElementForm obj = liftIO $ getObjectPropertyObject obj "form" DOMHTMLFormElement
+
+data DOMHTMLInputElementFormPropertyInfo
+instance AttrInfo DOMHTMLInputElementFormPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementFormPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementFormPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLInputElementFormPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementFormPropertyInfo = DOMHTMLFormElement
+    type AttrLabel DOMHTMLInputElementFormPropertyInfo = "DOMHTMLInputElement::form"
+    attrGet _ = getDOMHTMLInputElementForm
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "form-action"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementFormAction :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementFormAction obj = liftIO $ getObjectPropertyString obj "form-action"
+
+setDOMHTMLInputElementFormAction :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementFormAction obj val = liftIO $ setObjectPropertyString obj "form-action" val
+
+constructDOMHTMLInputElementFormAction :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementFormAction val = constructObjectPropertyString "form-action" val
+
+data DOMHTMLInputElementFormActionPropertyInfo
+instance AttrInfo DOMHTMLInputElementFormActionPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementFormActionPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementFormActionPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementFormActionPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementFormActionPropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementFormActionPropertyInfo = "DOMHTMLInputElement::form-action"
+    attrGet _ = getDOMHTMLInputElementFormAction
+    attrSet _ = setDOMHTMLInputElementFormAction
+    attrConstruct _ = constructDOMHTMLInputElementFormAction
+
+-- VVV Prop "form-enctype"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementFormEnctype :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementFormEnctype obj = liftIO $ getObjectPropertyString obj "form-enctype"
+
+setDOMHTMLInputElementFormEnctype :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementFormEnctype obj val = liftIO $ setObjectPropertyString obj "form-enctype" val
+
+constructDOMHTMLInputElementFormEnctype :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementFormEnctype val = constructObjectPropertyString "form-enctype" val
+
+data DOMHTMLInputElementFormEnctypePropertyInfo
+instance AttrInfo DOMHTMLInputElementFormEnctypePropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementFormEnctypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementFormEnctypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementFormEnctypePropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementFormEnctypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementFormEnctypePropertyInfo = "DOMHTMLInputElement::form-enctype"
+    attrGet _ = getDOMHTMLInputElementFormEnctype
+    attrSet _ = setDOMHTMLInputElementFormEnctype
+    attrConstruct _ = constructDOMHTMLInputElementFormEnctype
+
+-- VVV Prop "form-method"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementFormMethod :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementFormMethod obj = liftIO $ getObjectPropertyString obj "form-method"
+
+setDOMHTMLInputElementFormMethod :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementFormMethod obj val = liftIO $ setObjectPropertyString obj "form-method" val
+
+constructDOMHTMLInputElementFormMethod :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementFormMethod val = constructObjectPropertyString "form-method" val
+
+data DOMHTMLInputElementFormMethodPropertyInfo
+instance AttrInfo DOMHTMLInputElementFormMethodPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementFormMethodPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementFormMethodPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementFormMethodPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementFormMethodPropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementFormMethodPropertyInfo = "DOMHTMLInputElement::form-method"
+    attrGet _ = getDOMHTMLInputElementFormMethod
+    attrSet _ = setDOMHTMLInputElementFormMethod
+    attrConstruct _ = constructDOMHTMLInputElementFormMethod
+
+-- VVV Prop "form-no-validate"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementFormNoValidate :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Bool
+getDOMHTMLInputElementFormNoValidate obj = liftIO $ getObjectPropertyBool obj "form-no-validate"
+
+setDOMHTMLInputElementFormNoValidate :: (MonadIO m, DOMHTMLInputElementK o) => o -> Bool -> m ()
+setDOMHTMLInputElementFormNoValidate obj val = liftIO $ setObjectPropertyBool obj "form-no-validate" val
+
+constructDOMHTMLInputElementFormNoValidate :: Bool -> IO ([Char], GValue)
+constructDOMHTMLInputElementFormNoValidate val = constructObjectPropertyBool "form-no-validate" val
+
+data DOMHTMLInputElementFormNoValidatePropertyInfo
+instance AttrInfo DOMHTMLInputElementFormNoValidatePropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementFormNoValidatePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementFormNoValidatePropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLInputElementFormNoValidatePropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementFormNoValidatePropertyInfo = Bool
+    type AttrLabel DOMHTMLInputElementFormNoValidatePropertyInfo = "DOMHTMLInputElement::form-no-validate"
+    attrGet _ = getDOMHTMLInputElementFormNoValidate
+    attrSet _ = setDOMHTMLInputElementFormNoValidate
+    attrConstruct _ = constructDOMHTMLInputElementFormNoValidate
+
+-- VVV Prop "form-target"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementFormTarget :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementFormTarget obj = liftIO $ getObjectPropertyString obj "form-target"
+
+setDOMHTMLInputElementFormTarget :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementFormTarget obj val = liftIO $ setObjectPropertyString obj "form-target" val
+
+constructDOMHTMLInputElementFormTarget :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementFormTarget val = constructObjectPropertyString "form-target" val
+
+data DOMHTMLInputElementFormTargetPropertyInfo
+instance AttrInfo DOMHTMLInputElementFormTargetPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementFormTargetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementFormTargetPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementFormTargetPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementFormTargetPropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementFormTargetPropertyInfo = "DOMHTMLInputElement::form-target"
+    attrGet _ = getDOMHTMLInputElementFormTarget
+    attrSet _ = setDOMHTMLInputElementFormTarget
+    attrConstruct _ = constructDOMHTMLInputElementFormTarget
+
+-- VVV Prop "height"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementHeight :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Word64
+getDOMHTMLInputElementHeight obj = liftIO $ getObjectPropertyUInt64 obj "height"
+
+setDOMHTMLInputElementHeight :: (MonadIO m, DOMHTMLInputElementK o) => o -> Word64 -> m ()
+setDOMHTMLInputElementHeight obj val = liftIO $ setObjectPropertyUInt64 obj "height" val
+
+constructDOMHTMLInputElementHeight :: Word64 -> IO ([Char], GValue)
+constructDOMHTMLInputElementHeight val = constructObjectPropertyUInt64 "height" val
+
+data DOMHTMLInputElementHeightPropertyInfo
+instance AttrInfo DOMHTMLInputElementHeightPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementHeightPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementHeightPropertyInfo = (~) Word64
+    type AttrBaseTypeConstraint DOMHTMLInputElementHeightPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementHeightPropertyInfo = Word64
+    type AttrLabel DOMHTMLInputElementHeightPropertyInfo = "DOMHTMLInputElement::height"
+    attrGet _ = getDOMHTMLInputElementHeight
+    attrSet _ = setDOMHTMLInputElementHeight
+    attrConstruct _ = constructDOMHTMLInputElementHeight
+
+-- VVV Prop "incremental"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementIncremental :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Bool
+getDOMHTMLInputElementIncremental obj = liftIO $ getObjectPropertyBool obj "incremental"
+
+setDOMHTMLInputElementIncremental :: (MonadIO m, DOMHTMLInputElementK o) => o -> Bool -> m ()
+setDOMHTMLInputElementIncremental obj val = liftIO $ setObjectPropertyBool obj "incremental" val
+
+constructDOMHTMLInputElementIncremental :: Bool -> IO ([Char], GValue)
+constructDOMHTMLInputElementIncremental val = constructObjectPropertyBool "incremental" val
+
+data DOMHTMLInputElementIncrementalPropertyInfo
+instance AttrInfo DOMHTMLInputElementIncrementalPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementIncrementalPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementIncrementalPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLInputElementIncrementalPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementIncrementalPropertyInfo = Bool
+    type AttrLabel DOMHTMLInputElementIncrementalPropertyInfo = "DOMHTMLInputElement::incremental"
+    attrGet _ = getDOMHTMLInputElementIncremental
+    attrSet _ = setDOMHTMLInputElementIncremental
+    attrConstruct _ = constructDOMHTMLInputElementIncremental
+
+-- VVV Prop "indeterminate"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementIndeterminate :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Bool
+getDOMHTMLInputElementIndeterminate obj = liftIO $ getObjectPropertyBool obj "indeterminate"
+
+setDOMHTMLInputElementIndeterminate :: (MonadIO m, DOMHTMLInputElementK o) => o -> Bool -> m ()
+setDOMHTMLInputElementIndeterminate obj val = liftIO $ setObjectPropertyBool obj "indeterminate" val
+
+constructDOMHTMLInputElementIndeterminate :: Bool -> IO ([Char], GValue)
+constructDOMHTMLInputElementIndeterminate val = constructObjectPropertyBool "indeterminate" val
+
+data DOMHTMLInputElementIndeterminatePropertyInfo
+instance AttrInfo DOMHTMLInputElementIndeterminatePropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementIndeterminatePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementIndeterminatePropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLInputElementIndeterminatePropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementIndeterminatePropertyInfo = Bool
+    type AttrLabel DOMHTMLInputElementIndeterminatePropertyInfo = "DOMHTMLInputElement::indeterminate"
+    attrGet _ = getDOMHTMLInputElementIndeterminate
+    attrSet _ = setDOMHTMLInputElementIndeterminate
+    attrConstruct _ = constructDOMHTMLInputElementIndeterminate
+
+-- VVV Prop "labels"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNodeList"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLInputElementLabels :: (MonadIO m, DOMHTMLInputElementK o) => o -> m DOMNodeList
+getDOMHTMLInputElementLabels obj = liftIO $ getObjectPropertyObject obj "labels" DOMNodeList
+
+data DOMHTMLInputElementLabelsPropertyInfo
+instance AttrInfo DOMHTMLInputElementLabelsPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementLabelsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementLabelsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLInputElementLabelsPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementLabelsPropertyInfo = DOMNodeList
+    type AttrLabel DOMHTMLInputElementLabelsPropertyInfo = "DOMHTMLInputElement::labels"
+    attrGet _ = getDOMHTMLInputElementLabels
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "list"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLElement"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLInputElementList :: (MonadIO m, DOMHTMLInputElementK o) => o -> m DOMHTMLElement
+getDOMHTMLInputElementList obj = liftIO $ getObjectPropertyObject obj "list" DOMHTMLElement
+
+data DOMHTMLInputElementListPropertyInfo
+instance AttrInfo DOMHTMLInputElementListPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementListPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementListPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLInputElementListPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementListPropertyInfo = DOMHTMLElement
+    type AttrLabel DOMHTMLInputElementListPropertyInfo = "DOMHTMLInputElement::list"
+    attrGet _ = getDOMHTMLInputElementList
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "max"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementMax :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementMax obj = liftIO $ getObjectPropertyString obj "max"
+
+setDOMHTMLInputElementMax :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementMax obj val = liftIO $ setObjectPropertyString obj "max" val
+
+constructDOMHTMLInputElementMax :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementMax val = constructObjectPropertyString "max" val
+
+data DOMHTMLInputElementMaxPropertyInfo
+instance AttrInfo DOMHTMLInputElementMaxPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementMaxPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementMaxPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementMaxPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementMaxPropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementMaxPropertyInfo = "DOMHTMLInputElement::max"
+    attrGet _ = getDOMHTMLInputElementMax
+    attrSet _ = setDOMHTMLInputElementMax
+    attrConstruct _ = constructDOMHTMLInputElementMax
+
+-- VVV Prop "max-length"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementMaxLength :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Int64
+getDOMHTMLInputElementMaxLength obj = liftIO $ getObjectPropertyInt64 obj "max-length"
+
+setDOMHTMLInputElementMaxLength :: (MonadIO m, DOMHTMLInputElementK o) => o -> Int64 -> m ()
+setDOMHTMLInputElementMaxLength obj val = liftIO $ setObjectPropertyInt64 obj "max-length" val
+
+constructDOMHTMLInputElementMaxLength :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLInputElementMaxLength val = constructObjectPropertyInt64 "max-length" val
+
+data DOMHTMLInputElementMaxLengthPropertyInfo
+instance AttrInfo DOMHTMLInputElementMaxLengthPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementMaxLengthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementMaxLengthPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLInputElementMaxLengthPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementMaxLengthPropertyInfo = Int64
+    type AttrLabel DOMHTMLInputElementMaxLengthPropertyInfo = "DOMHTMLInputElement::max-length"
+    attrGet _ = getDOMHTMLInputElementMaxLength
+    attrSet _ = setDOMHTMLInputElementMaxLength
+    attrConstruct _ = constructDOMHTMLInputElementMaxLength
+
+-- VVV Prop "min"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementMin :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementMin obj = liftIO $ getObjectPropertyString obj "min"
+
+setDOMHTMLInputElementMin :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementMin obj val = liftIO $ setObjectPropertyString obj "min" val
+
+constructDOMHTMLInputElementMin :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementMin val = constructObjectPropertyString "min" val
+
+data DOMHTMLInputElementMinPropertyInfo
+instance AttrInfo DOMHTMLInputElementMinPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementMinPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementMinPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementMinPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementMinPropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementMinPropertyInfo = "DOMHTMLInputElement::min"
+    attrGet _ = getDOMHTMLInputElementMin
+    attrSet _ = setDOMHTMLInputElementMin
+    attrConstruct _ = constructDOMHTMLInputElementMin
+
+-- VVV Prop "multiple"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementMultiple :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Bool
+getDOMHTMLInputElementMultiple obj = liftIO $ getObjectPropertyBool obj "multiple"
+
+setDOMHTMLInputElementMultiple :: (MonadIO m, DOMHTMLInputElementK o) => o -> Bool -> m ()
+setDOMHTMLInputElementMultiple obj val = liftIO $ setObjectPropertyBool obj "multiple" val
+
+constructDOMHTMLInputElementMultiple :: Bool -> IO ([Char], GValue)
+constructDOMHTMLInputElementMultiple val = constructObjectPropertyBool "multiple" val
+
+data DOMHTMLInputElementMultiplePropertyInfo
+instance AttrInfo DOMHTMLInputElementMultiplePropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementMultiplePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementMultiplePropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLInputElementMultiplePropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementMultiplePropertyInfo = Bool
+    type AttrLabel DOMHTMLInputElementMultiplePropertyInfo = "DOMHTMLInputElement::multiple"
+    attrGet _ = getDOMHTMLInputElementMultiple
+    attrSet _ = setDOMHTMLInputElementMultiple
+    attrConstruct _ = constructDOMHTMLInputElementMultiple
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementName :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLInputElementName :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLInputElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLInputElementNamePropertyInfo
+instance AttrInfo DOMHTMLInputElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementNamePropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementNamePropertyInfo = "DOMHTMLInputElement::name"
+    attrGet _ = getDOMHTMLInputElementName
+    attrSet _ = setDOMHTMLInputElementName
+    attrConstruct _ = constructDOMHTMLInputElementName
+
+-- VVV Prop "pattern"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementPattern :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementPattern obj = liftIO $ getObjectPropertyString obj "pattern"
+
+setDOMHTMLInputElementPattern :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementPattern obj val = liftIO $ setObjectPropertyString obj "pattern" val
+
+constructDOMHTMLInputElementPattern :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementPattern val = constructObjectPropertyString "pattern" val
+
+data DOMHTMLInputElementPatternPropertyInfo
+instance AttrInfo DOMHTMLInputElementPatternPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementPatternPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementPatternPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementPatternPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementPatternPropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementPatternPropertyInfo = "DOMHTMLInputElement::pattern"
+    attrGet _ = getDOMHTMLInputElementPattern
+    attrSet _ = setDOMHTMLInputElementPattern
+    attrConstruct _ = constructDOMHTMLInputElementPattern
+
+-- VVV Prop "placeholder"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementPlaceholder :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementPlaceholder obj = liftIO $ getObjectPropertyString obj "placeholder"
+
+setDOMHTMLInputElementPlaceholder :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementPlaceholder obj val = liftIO $ setObjectPropertyString obj "placeholder" val
+
+constructDOMHTMLInputElementPlaceholder :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementPlaceholder val = constructObjectPropertyString "placeholder" val
+
+data DOMHTMLInputElementPlaceholderPropertyInfo
+instance AttrInfo DOMHTMLInputElementPlaceholderPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementPlaceholderPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementPlaceholderPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementPlaceholderPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementPlaceholderPropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementPlaceholderPropertyInfo = "DOMHTMLInputElement::placeholder"
+    attrGet _ = getDOMHTMLInputElementPlaceholder
+    attrSet _ = setDOMHTMLInputElementPlaceholder
+    attrConstruct _ = constructDOMHTMLInputElementPlaceholder
+
+-- VVV Prop "read-only"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementReadOnly :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Bool
+getDOMHTMLInputElementReadOnly obj = liftIO $ getObjectPropertyBool obj "read-only"
+
+setDOMHTMLInputElementReadOnly :: (MonadIO m, DOMHTMLInputElementK o) => o -> Bool -> m ()
+setDOMHTMLInputElementReadOnly obj val = liftIO $ setObjectPropertyBool obj "read-only" val
+
+constructDOMHTMLInputElementReadOnly :: Bool -> IO ([Char], GValue)
+constructDOMHTMLInputElementReadOnly val = constructObjectPropertyBool "read-only" val
+
+data DOMHTMLInputElementReadOnlyPropertyInfo
+instance AttrInfo DOMHTMLInputElementReadOnlyPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementReadOnlyPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementReadOnlyPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLInputElementReadOnlyPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementReadOnlyPropertyInfo = Bool
+    type AttrLabel DOMHTMLInputElementReadOnlyPropertyInfo = "DOMHTMLInputElement::read-only"
+    attrGet _ = getDOMHTMLInputElementReadOnly
+    attrSet _ = setDOMHTMLInputElementReadOnly
+    attrConstruct _ = constructDOMHTMLInputElementReadOnly
+
+-- VVV Prop "required"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementRequired :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Bool
+getDOMHTMLInputElementRequired obj = liftIO $ getObjectPropertyBool obj "required"
+
+setDOMHTMLInputElementRequired :: (MonadIO m, DOMHTMLInputElementK o) => o -> Bool -> m ()
+setDOMHTMLInputElementRequired obj val = liftIO $ setObjectPropertyBool obj "required" val
+
+constructDOMHTMLInputElementRequired :: Bool -> IO ([Char], GValue)
+constructDOMHTMLInputElementRequired val = constructObjectPropertyBool "required" val
+
+data DOMHTMLInputElementRequiredPropertyInfo
+instance AttrInfo DOMHTMLInputElementRequiredPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementRequiredPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementRequiredPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLInputElementRequiredPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementRequiredPropertyInfo = Bool
+    type AttrLabel DOMHTMLInputElementRequiredPropertyInfo = "DOMHTMLInputElement::required"
+    attrGet _ = getDOMHTMLInputElementRequired
+    attrSet _ = setDOMHTMLInputElementRequired
+    attrConstruct _ = constructDOMHTMLInputElementRequired
+
+-- VVV Prop "size"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementSize :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Word64
+getDOMHTMLInputElementSize obj = liftIO $ getObjectPropertyUInt64 obj "size"
+
+setDOMHTMLInputElementSize :: (MonadIO m, DOMHTMLInputElementK o) => o -> Word64 -> m ()
+setDOMHTMLInputElementSize obj val = liftIO $ setObjectPropertyUInt64 obj "size" val
+
+constructDOMHTMLInputElementSize :: Word64 -> IO ([Char], GValue)
+constructDOMHTMLInputElementSize val = constructObjectPropertyUInt64 "size" val
+
+data DOMHTMLInputElementSizePropertyInfo
+instance AttrInfo DOMHTMLInputElementSizePropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementSizePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementSizePropertyInfo = (~) Word64
+    type AttrBaseTypeConstraint DOMHTMLInputElementSizePropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementSizePropertyInfo = Word64
+    type AttrLabel DOMHTMLInputElementSizePropertyInfo = "DOMHTMLInputElement::size"
+    attrGet _ = getDOMHTMLInputElementSize
+    attrSet _ = setDOMHTMLInputElementSize
+    attrConstruct _ = constructDOMHTMLInputElementSize
+
+-- VVV Prop "src"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementSrc :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementSrc obj = liftIO $ getObjectPropertyString obj "src"
+
+setDOMHTMLInputElementSrc :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementSrc obj val = liftIO $ setObjectPropertyString obj "src" val
+
+constructDOMHTMLInputElementSrc :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementSrc val = constructObjectPropertyString "src" val
+
+data DOMHTMLInputElementSrcPropertyInfo
+instance AttrInfo DOMHTMLInputElementSrcPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementSrcPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementSrcPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementSrcPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementSrcPropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementSrcPropertyInfo = "DOMHTMLInputElement::src"
+    attrGet _ = getDOMHTMLInputElementSrc
+    attrSet _ = setDOMHTMLInputElementSrc
+    attrConstruct _ = constructDOMHTMLInputElementSrc
+
+-- VVV Prop "step"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementStep :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementStep obj = liftIO $ getObjectPropertyString obj "step"
+
+setDOMHTMLInputElementStep :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementStep obj val = liftIO $ setObjectPropertyString obj "step" val
+
+constructDOMHTMLInputElementStep :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementStep val = constructObjectPropertyString "step" val
+
+data DOMHTMLInputElementStepPropertyInfo
+instance AttrInfo DOMHTMLInputElementStepPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementStepPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementStepPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementStepPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementStepPropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementStepPropertyInfo = "DOMHTMLInputElement::step"
+    attrGet _ = getDOMHTMLInputElementStep
+    attrSet _ = setDOMHTMLInputElementStep
+    attrConstruct _ = constructDOMHTMLInputElementStep
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementType :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementType obj = liftIO $ getObjectPropertyString obj "type"
+
+setDOMHTMLInputElementType :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementType obj val = liftIO $ setObjectPropertyString obj "type" val
+
+constructDOMHTMLInputElementType :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementType val = constructObjectPropertyString "type" val
+
+data DOMHTMLInputElementTypePropertyInfo
+instance AttrInfo DOMHTMLInputElementTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementTypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementTypePropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementTypePropertyInfo = "DOMHTMLInputElement::type"
+    attrGet _ = getDOMHTMLInputElementType
+    attrSet _ = setDOMHTMLInputElementType
+    attrConstruct _ = constructDOMHTMLInputElementType
+
+-- VVV Prop "use-map"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementUseMap :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementUseMap obj = liftIO $ getObjectPropertyString obj "use-map"
+
+setDOMHTMLInputElementUseMap :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementUseMap obj val = liftIO $ setObjectPropertyString obj "use-map" val
+
+constructDOMHTMLInputElementUseMap :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementUseMap val = constructObjectPropertyString "use-map" val
+
+data DOMHTMLInputElementUseMapPropertyInfo
+instance AttrInfo DOMHTMLInputElementUseMapPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementUseMapPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementUseMapPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementUseMapPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementUseMapPropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementUseMapPropertyInfo = "DOMHTMLInputElement::use-map"
+    attrGet _ = getDOMHTMLInputElementUseMap
+    attrSet _ = setDOMHTMLInputElementUseMap
+    attrConstruct _ = constructDOMHTMLInputElementUseMap
+
+-- VVV Prop "validation-message"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLInputElementValidationMessage :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementValidationMessage obj = liftIO $ getObjectPropertyString obj "validation-message"
+
+data DOMHTMLInputElementValidationMessagePropertyInfo
+instance AttrInfo DOMHTMLInputElementValidationMessagePropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementValidationMessagePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementValidationMessagePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLInputElementValidationMessagePropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementValidationMessagePropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementValidationMessagePropertyInfo = "DOMHTMLInputElement::validation-message"
+    attrGet _ = getDOMHTMLInputElementValidationMessage
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "value"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementValue :: (MonadIO m, DOMHTMLInputElementK o) => o -> m T.Text
+getDOMHTMLInputElementValue obj = liftIO $ getObjectPropertyString obj "value"
+
+setDOMHTMLInputElementValue :: (MonadIO m, DOMHTMLInputElementK o) => o -> T.Text -> m ()
+setDOMHTMLInputElementValue obj val = liftIO $ setObjectPropertyString obj "value" val
+
+constructDOMHTMLInputElementValue :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLInputElementValue val = constructObjectPropertyString "value" val
+
+data DOMHTMLInputElementValuePropertyInfo
+instance AttrInfo DOMHTMLInputElementValuePropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementValuePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementValuePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLInputElementValuePropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementValuePropertyInfo = T.Text
+    type AttrLabel DOMHTMLInputElementValuePropertyInfo = "DOMHTMLInputElement::value"
+    attrGet _ = getDOMHTMLInputElementValue
+    attrSet _ = setDOMHTMLInputElementValue
+    attrConstruct _ = constructDOMHTMLInputElementValue
+
+-- VVV Prop "value-as-number"
+   -- Type: TBasicType TDouble
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementValueAsNumber :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Double
+getDOMHTMLInputElementValueAsNumber obj = liftIO $ getObjectPropertyDouble obj "value-as-number"
+
+setDOMHTMLInputElementValueAsNumber :: (MonadIO m, DOMHTMLInputElementK o) => o -> Double -> m ()
+setDOMHTMLInputElementValueAsNumber obj val = liftIO $ setObjectPropertyDouble obj "value-as-number" val
+
+constructDOMHTMLInputElementValueAsNumber :: Double -> IO ([Char], GValue)
+constructDOMHTMLInputElementValueAsNumber val = constructObjectPropertyDouble "value-as-number" val
+
+data DOMHTMLInputElementValueAsNumberPropertyInfo
+instance AttrInfo DOMHTMLInputElementValueAsNumberPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementValueAsNumberPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementValueAsNumberPropertyInfo = (~) Double
+    type AttrBaseTypeConstraint DOMHTMLInputElementValueAsNumberPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementValueAsNumberPropertyInfo = Double
+    type AttrLabel DOMHTMLInputElementValueAsNumberPropertyInfo = "DOMHTMLInputElement::value-as-number"
+    attrGet _ = getDOMHTMLInputElementValueAsNumber
+    attrSet _ = setDOMHTMLInputElementValueAsNumber
+    attrConstruct _ = constructDOMHTMLInputElementValueAsNumber
+
+-- VVV Prop "width"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLInputElementWidth :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Word64
+getDOMHTMLInputElementWidth obj = liftIO $ getObjectPropertyUInt64 obj "width"
+
+setDOMHTMLInputElementWidth :: (MonadIO m, DOMHTMLInputElementK o) => o -> Word64 -> m ()
+setDOMHTMLInputElementWidth obj val = liftIO $ setObjectPropertyUInt64 obj "width" val
+
+constructDOMHTMLInputElementWidth :: Word64 -> IO ([Char], GValue)
+constructDOMHTMLInputElementWidth val = constructObjectPropertyUInt64 "width" val
+
+data DOMHTMLInputElementWidthPropertyInfo
+instance AttrInfo DOMHTMLInputElementWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementWidthPropertyInfo = (~) Word64
+    type AttrBaseTypeConstraint DOMHTMLInputElementWidthPropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementWidthPropertyInfo = Word64
+    type AttrLabel DOMHTMLInputElementWidthPropertyInfo = "DOMHTMLInputElement::width"
+    attrGet _ = getDOMHTMLInputElementWidth
+    attrSet _ = setDOMHTMLInputElementWidth
+    attrConstruct _ = constructDOMHTMLInputElementWidth
+
+-- VVV Prop "will-validate"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLInputElementWillValidate :: (MonadIO m, DOMHTMLInputElementK o) => o -> m Bool
+getDOMHTMLInputElementWillValidate obj = liftIO $ getObjectPropertyBool obj "will-validate"
+
+data DOMHTMLInputElementWillValidatePropertyInfo
+instance AttrInfo DOMHTMLInputElementWillValidatePropertyInfo where
+    type AttrAllowedOps DOMHTMLInputElementWillValidatePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLInputElementWillValidatePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLInputElementWillValidatePropertyInfo = DOMHTMLInputElementK
+    type AttrGetType DOMHTMLInputElementWillValidatePropertyInfo = Bool
+    type AttrLabel DOMHTMLInputElementWillValidatePropertyInfo = "DOMHTMLInputElement::will-validate"
+    attrGet _ = getDOMHTMLInputElementWillValidate
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMHTMLInputElement = DOMHTMLInputElementAttributeList
+type DOMHTMLInputElementAttributeList = ('[ '("accept", DOMHTMLInputElementAcceptPropertyInfo), '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLInputElementAlignPropertyInfo), '("alt", DOMHTMLInputElementAltPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("autocapitalize", DOMHTMLInputElementAutocapitalizePropertyInfo), '("autocomplete", DOMHTMLInputElementAutocompletePropertyInfo), '("autocorrect", DOMHTMLInputElementAutocorrectPropertyInfo), '("autofocus", DOMHTMLInputElementAutofocusPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("capture", DOMHTMLInputElementCapturePropertyInfo), '("checked", DOMHTMLInputElementCheckedPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("default-checked", DOMHTMLInputElementDefaultCheckedPropertyInfo), '("default-value", DOMHTMLInputElementDefaultValuePropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("dir-name", DOMHTMLInputElementDirNamePropertyInfo), '("disabled", DOMHTMLInputElementDisabledPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("files", DOMHTMLInputElementFilesPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("form", DOMHTMLInputElementFormPropertyInfo), '("form-action", DOMHTMLInputElementFormActionPropertyInfo), '("form-enctype", DOMHTMLInputElementFormEnctypePropertyInfo), '("form-method", DOMHTMLInputElementFormMethodPropertyInfo), '("form-no-validate", DOMHTMLInputElementFormNoValidatePropertyInfo), '("form-target", DOMHTMLInputElementFormTargetPropertyInfo), '("height", DOMHTMLInputElementHeightPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("incremental", DOMHTMLInputElementIncrementalPropertyInfo), '("indeterminate", DOMHTMLInputElementIndeterminatePropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("labels", DOMHTMLInputElementLabelsPropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("list", DOMHTMLInputElementListPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("max", DOMHTMLInputElementMaxPropertyInfo), '("max-length", DOMHTMLInputElementMaxLengthPropertyInfo), '("min", DOMHTMLInputElementMinPropertyInfo), '("multiple", DOMHTMLInputElementMultiplePropertyInfo), '("name", DOMHTMLInputElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("pattern", DOMHTMLInputElementPatternPropertyInfo), '("placeholder", DOMHTMLInputElementPlaceholderPropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("read-only", DOMHTMLInputElementReadOnlyPropertyInfo), '("required", DOMHTMLInputElementRequiredPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("size", DOMHTMLInputElementSizePropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("src", DOMHTMLInputElementSrcPropertyInfo), '("step", DOMHTMLInputElementStepPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLInputElementTypePropertyInfo), '("use-map", DOMHTMLInputElementUseMapPropertyInfo), '("validation-message", DOMHTMLInputElementValidationMessagePropertyInfo), '("value", DOMHTMLInputElementValuePropertyInfo), '("value-as-number", DOMHTMLInputElementValueAsNumberPropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("width", DOMHTMLInputElementWidthPropertyInfo), '("will-validate", DOMHTMLInputElementWillValidatePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLInputElement = DOMHTMLInputElementSignalList
+type DOMHTMLInputElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLInputElement::get_accept
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_accept" webkit_dom_html_input_element_get_accept :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CString
+
+
+dOMHTMLInputElementGetAccept ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLInputElementGetAccept _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_accept _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_input_element_get_accept" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_align" webkit_dom_html_input_element_get_align :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CString
+
+
+dOMHTMLInputElementGetAlign ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLInputElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_input_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_alt
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_alt" webkit_dom_html_input_element_get_alt :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CString
+
+
+dOMHTMLInputElementGetAlt ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLInputElementGetAlt _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_alt _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_input_element_get_alt" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_autofocus
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_autofocus" webkit_dom_html_input_element_get_autofocus :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CInt
+
+
+dOMHTMLInputElementGetAutofocus ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLInputElementGetAutofocus _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_autofocus _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_capture
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_capture" webkit_dom_html_input_element_get_capture :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CInt
+
+
+dOMHTMLInputElementGetCapture ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLInputElementGetCapture _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_capture _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_checked
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_checked" webkit_dom_html_input_element_get_checked :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CInt
+
+
+dOMHTMLInputElementGetChecked ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLInputElementGetChecked _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_checked _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_default_checked
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_default_checked" webkit_dom_html_input_element_get_default_checked :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CInt
+
+
+dOMHTMLInputElementGetDefaultChecked ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLInputElementGetDefaultChecked _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_default_checked _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_default_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_default_value" webkit_dom_html_input_element_get_default_value :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CString
+
+
+dOMHTMLInputElementGetDefaultValue ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLInputElementGetDefaultValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_default_value _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_input_element_get_default_value" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_disabled" webkit_dom_html_input_element_get_disabled :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CInt
+
+
+dOMHTMLInputElementGetDisabled ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLInputElementGetDisabled _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_disabled _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_files
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMFileList"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_files" webkit_dom_html_input_element_get_files :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO (Ptr DOMFileList)
+
+
+dOMHTMLInputElementGetFiles ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m DOMFileList
+dOMHTMLInputElementGetFiles _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_files _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_input_element_get_files" result
+    result' <- (wrapObject DOMFileList) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_form
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_form" webkit_dom_html_input_element_get_form :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO (Ptr DOMHTMLFormElement)
+
+
+dOMHTMLInputElementGetForm ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLFormElement
+dOMHTMLInputElementGetForm _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_form _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_input_element_get_form" result
+    result' <- (newObject DOMHTMLFormElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_height" webkit_dom_html_input_element_get_height :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO Word64
+
+
+dOMHTMLInputElementGetHeight ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMHTMLInputElementGetHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_height _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLInputElement::get_indeterminate
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_indeterminate" webkit_dom_html_input_element_get_indeterminate :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CInt
+
+
+dOMHTMLInputElementGetIndeterminate ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLInputElementGetIndeterminate _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_indeterminate _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_input_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_input_type" webkit_dom_html_input_element_get_input_type :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CString
+
+
+dOMHTMLInputElementGetInputType ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLInputElementGetInputType _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_input_type _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_input_element_get_input_type" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_max_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_max_length" webkit_dom_html_input_element_get_max_length :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO Int64
+
+
+dOMHTMLInputElementGetMaxLength ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLInputElementGetMaxLength _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_max_length _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLInputElement::get_multiple
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_multiple" webkit_dom_html_input_element_get_multiple :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CInt
+
+
+dOMHTMLInputElementGetMultiple ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLInputElementGetMultiple _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_multiple _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_name" webkit_dom_html_input_element_get_name :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CString
+
+
+dOMHTMLInputElementGetName ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLInputElementGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_input_element_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_size
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_size" webkit_dom_html_input_element_get_size :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO Word64
+
+
+dOMHTMLInputElementGetSize ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMHTMLInputElementGetSize _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_size _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLInputElement::get_src
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_src" webkit_dom_html_input_element_get_src :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CString
+
+
+dOMHTMLInputElementGetSrc ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLInputElementGetSrc _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_src _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_input_element_get_src" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_use_map
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_use_map" webkit_dom_html_input_element_get_use_map :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CString
+
+
+dOMHTMLInputElementGetUseMap ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLInputElementGetUseMap _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_use_map _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_input_element_get_use_map" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_value" webkit_dom_html_input_element_get_value :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CString
+
+
+dOMHTMLInputElementGetValue ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLInputElementGetValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_value _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_input_element_get_value" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::get_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_width" webkit_dom_html_input_element_get_width :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO Word64
+
+
+dOMHTMLInputElementGetWidth ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMHTMLInputElementGetWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_width _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLInputElement::get_will_validate
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_get_will_validate" webkit_dom_html_input_element_get_will_validate :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CInt
+
+
+dOMHTMLInputElementGetWillValidate ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLInputElementGetWillValidate _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_get_will_validate _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::is_edited
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_is_edited" webkit_dom_html_input_element_is_edited :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO CInt
+
+
+dOMHTMLInputElementIsEdited ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLInputElementIsEdited _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_input_element_is_edited _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLInputElement::select
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_select" webkit_dom_html_input_element_select :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    IO ()
+
+
+dOMHTMLInputElementSelect ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMHTMLInputElementSelect _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_input_element_select _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLInputElement::set_accept
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_accept" webkit_dom_html_input_element_set_accept :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLInputElementSetAccept ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLInputElementSetAccept _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_input_element_set_accept _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLInputElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_align" webkit_dom_html_input_element_set_align :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLInputElementSetAlign ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLInputElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_input_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLInputElement::set_alt
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_alt" webkit_dom_html_input_element_set_alt :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLInputElementSetAlt ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLInputElementSetAlt _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_input_element_set_alt _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLInputElement::set_autofocus
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_autofocus" webkit_dom_html_input_element_set_autofocus :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLInputElementSetAutofocus ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLInputElementSetAutofocus _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_input_element_set_autofocus _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLInputElement::set_checked
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_checked" webkit_dom_html_input_element_set_checked :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLInputElementSetChecked ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLInputElementSetChecked _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_input_element_set_checked _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLInputElement::set_default_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_default_value" webkit_dom_html_input_element_set_default_value :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLInputElementSetDefaultValue ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLInputElementSetDefaultValue _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_input_element_set_default_value _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLInputElement::set_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_disabled" webkit_dom_html_input_element_set_disabled :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLInputElementSetDisabled ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLInputElementSetDisabled _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_input_element_set_disabled _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLInputElement::set_files
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TInterface "WebKit2WebExtension" "DOMFileList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TInterface "WebKit2WebExtension" "DOMFileList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_files" webkit_dom_html_input_element_set_files :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    Ptr DOMFileList ->                      -- value : TInterface "WebKit2WebExtension" "DOMFileList"
+    IO ()
+
+
+dOMHTMLInputElementSetFiles ::
+    (MonadIO m, DOMHTMLInputElementK a, DOMFileListK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- value
+    m ()
+dOMHTMLInputElementSetFiles _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = unsafeManagedPtrCastPtr value
+    webkit_dom_html_input_element_set_files _obj' value'
+    touchManagedPtr _obj
+    touchManagedPtr value
+    return ()
+
+-- method DOMHTMLInputElement::set_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_height" webkit_dom_html_input_element_set_height :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    Word64 ->                               -- value : TBasicType TUInt64
+    IO ()
+
+
+dOMHTMLInputElementSetHeight ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- value
+    m ()
+dOMHTMLInputElementSetHeight _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_input_element_set_height _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLInputElement::set_indeterminate
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_indeterminate" webkit_dom_html_input_element_set_indeterminate :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLInputElementSetIndeterminate ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLInputElementSetIndeterminate _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_input_element_set_indeterminate _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLInputElement::set_input_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_input_type" webkit_dom_html_input_element_set_input_type :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLInputElementSetInputType ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLInputElementSetInputType _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_input_element_set_input_type _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLInputElement::set_max_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_max_length" webkit_dom_html_input_element_set_max_length :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMHTMLInputElementSetMaxLength ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLInputElementSetMaxLength _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        propagateGError $ webkit_dom_html_input_element_set_max_length _obj' value
+        touchManagedPtr _obj
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMHTMLInputElement::set_multiple
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_multiple" webkit_dom_html_input_element_set_multiple :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLInputElementSetMultiple ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLInputElementSetMultiple _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_input_element_set_multiple _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLInputElement::set_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_name" webkit_dom_html_input_element_set_name :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLInputElementSetName ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLInputElementSetName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_input_element_set_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLInputElement::set_read_only
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_read_only" webkit_dom_html_input_element_set_read_only :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLInputElementSetReadOnly ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLInputElementSetReadOnly _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_input_element_set_read_only _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLInputElement::set_size
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_size" webkit_dom_html_input_element_set_size :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    Word64 ->                               -- value : TBasicType TUInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMHTMLInputElementSetSize ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- value
+    m ()
+dOMHTMLInputElementSetSize _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        propagateGError $ webkit_dom_html_input_element_set_size _obj' value
+        touchManagedPtr _obj
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMHTMLInputElement::set_src
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_src" webkit_dom_html_input_element_set_src :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLInputElementSetSrc ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLInputElementSetSrc _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_input_element_set_src _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLInputElement::set_use_map
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_use_map" webkit_dom_html_input_element_set_use_map :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLInputElementSetUseMap ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLInputElementSetUseMap _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_input_element_set_use_map _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLInputElement::set_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_value" webkit_dom_html_input_element_set_value :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLInputElementSetValue ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLInputElementSetValue _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_input_element_set_value _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLInputElement::set_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLInputElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_input_element_set_width" webkit_dom_html_input_element_set_width :: 
+    Ptr DOMHTMLInputElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLInputElement"
+    Word64 ->                               -- value : TBasicType TUInt64
+    IO ()
+
+
+dOMHTMLInputElementSetWidth ::
+    (MonadIO m, DOMHTMLInputElementK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- value
+    m ()
+dOMHTMLInputElementSetWidth _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_input_element_set_width _obj' value
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLInputElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLInputElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLInputElement.hs-boot
@@ -0,0 +1,57 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLInputElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLInputElement = DOMHTMLInputElement (ForeignPtr DOMHTMLInputElement)
+instance GObject DOMHTMLInputElement where
+class GObject o => DOMHTMLInputElementK o
+instance (GObject o, IsDescendantOf DOMHTMLInputElement o) => DOMHTMLInputElementK o
+data DOMHTMLInputElementAcceptPropertyInfo
+data DOMHTMLInputElementAlignPropertyInfo
+data DOMHTMLInputElementAltPropertyInfo
+data DOMHTMLInputElementAutocapitalizePropertyInfo
+data DOMHTMLInputElementAutocompletePropertyInfo
+data DOMHTMLInputElementAutocorrectPropertyInfo
+data DOMHTMLInputElementAutofocusPropertyInfo
+data DOMHTMLInputElementCapturePropertyInfo
+data DOMHTMLInputElementCheckedPropertyInfo
+data DOMHTMLInputElementDefaultCheckedPropertyInfo
+data DOMHTMLInputElementDefaultValuePropertyInfo
+data DOMHTMLInputElementDirNamePropertyInfo
+data DOMHTMLInputElementDisabledPropertyInfo
+data DOMHTMLInputElementFilesPropertyInfo
+data DOMHTMLInputElementFormPropertyInfo
+data DOMHTMLInputElementFormActionPropertyInfo
+data DOMHTMLInputElementFormEnctypePropertyInfo
+data DOMHTMLInputElementFormMethodPropertyInfo
+data DOMHTMLInputElementFormNoValidatePropertyInfo
+data DOMHTMLInputElementFormTargetPropertyInfo
+data DOMHTMLInputElementHeightPropertyInfo
+data DOMHTMLInputElementIncrementalPropertyInfo
+data DOMHTMLInputElementIndeterminatePropertyInfo
+data DOMHTMLInputElementLabelsPropertyInfo
+data DOMHTMLInputElementListPropertyInfo
+data DOMHTMLInputElementMaxPropertyInfo
+data DOMHTMLInputElementMaxLengthPropertyInfo
+data DOMHTMLInputElementMinPropertyInfo
+data DOMHTMLInputElementMultiplePropertyInfo
+data DOMHTMLInputElementNamePropertyInfo
+data DOMHTMLInputElementPatternPropertyInfo
+data DOMHTMLInputElementPlaceholderPropertyInfo
+data DOMHTMLInputElementReadOnlyPropertyInfo
+data DOMHTMLInputElementRequiredPropertyInfo
+data DOMHTMLInputElementSizePropertyInfo
+data DOMHTMLInputElementSrcPropertyInfo
+data DOMHTMLInputElementStepPropertyInfo
+data DOMHTMLInputElementTypePropertyInfo
+data DOMHTMLInputElementUseMapPropertyInfo
+data DOMHTMLInputElementValidationMessagePropertyInfo
+data DOMHTMLInputElementValuePropertyInfo
+data DOMHTMLInputElementValueAsNumberPropertyInfo
+data DOMHTMLInputElementWidthPropertyInfo
+data DOMHTMLInputElementWillValidatePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLLIElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLLIElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLLIElement.hs
@@ -0,0 +1,247 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLLIElement
+    ( 
+
+-- * Exported types
+    DOMHTMLLIElement(..)                    ,
+    DOMHTMLLIElementK                       ,
+    toDOMHTMLLIElement                      ,
+    noDOMHTMLLIElement                      ,
+
+
+ -- * Methods
+-- ** dOMHTMLLIElementGetTypeAttr
+    dOMHTMLLIElementGetTypeAttr             ,
+
+
+-- ** dOMHTMLLIElementGetValue
+    dOMHTMLLIElementGetValue                ,
+
+
+-- ** dOMHTMLLIElementSetTypeAttr
+    dOMHTMLLIElementSetTypeAttr             ,
+
+
+-- ** dOMHTMLLIElementSetValue
+    dOMHTMLLIElementSetValue                ,
+
+
+
+
+ -- * Properties
+-- ** Type
+    DOMHTMLLIElementTypePropertyInfo        ,
+    constructDOMHTMLLIElementType           ,
+    getDOMHTMLLIElementType                 ,
+    setDOMHTMLLIElementType                 ,
+
+
+-- ** Value
+    DOMHTMLLIElementValuePropertyInfo       ,
+    constructDOMHTMLLIElementValue          ,
+    getDOMHTMLLIElementValue                ,
+    setDOMHTMLLIElementValue                ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLLIElement = DOMHTMLLIElement (ForeignPtr DOMHTMLLIElement)
+foreign import ccall "webkit_dom_html_li_element_get_type"
+    c_webkit_dom_html_li_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLLIElement = DOMHTMLLIElementParentTypes
+type DOMHTMLLIElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLLIElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_li_element_get_type
+    
+
+class GObject o => DOMHTMLLIElementK o
+instance (GObject o, IsDescendantOf DOMHTMLLIElement o) => DOMHTMLLIElementK o
+
+toDOMHTMLLIElement :: DOMHTMLLIElementK o => o -> IO DOMHTMLLIElement
+toDOMHTMLLIElement = unsafeCastTo DOMHTMLLIElement
+
+noDOMHTMLLIElement :: Maybe DOMHTMLLIElement
+noDOMHTMLLIElement = Nothing
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLLIElementType :: (MonadIO m, DOMHTMLLIElementK o) => o -> m T.Text
+getDOMHTMLLIElementType obj = liftIO $ getObjectPropertyString obj "type"
+
+setDOMHTMLLIElementType :: (MonadIO m, DOMHTMLLIElementK o) => o -> T.Text -> m ()
+setDOMHTMLLIElementType obj val = liftIO $ setObjectPropertyString obj "type" val
+
+constructDOMHTMLLIElementType :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLLIElementType val = constructObjectPropertyString "type" val
+
+data DOMHTMLLIElementTypePropertyInfo
+instance AttrInfo DOMHTMLLIElementTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLLIElementTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLIElementTypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLLIElementTypePropertyInfo = DOMHTMLLIElementK
+    type AttrGetType DOMHTMLLIElementTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLLIElementTypePropertyInfo = "DOMHTMLLIElement::type"
+    attrGet _ = getDOMHTMLLIElementType
+    attrSet _ = setDOMHTMLLIElementType
+    attrConstruct _ = constructDOMHTMLLIElementType
+
+-- VVV Prop "value"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLLIElementValue :: (MonadIO m, DOMHTMLLIElementK o) => o -> m Int64
+getDOMHTMLLIElementValue obj = liftIO $ getObjectPropertyInt64 obj "value"
+
+setDOMHTMLLIElementValue :: (MonadIO m, DOMHTMLLIElementK o) => o -> Int64 -> m ()
+setDOMHTMLLIElementValue obj val = liftIO $ setObjectPropertyInt64 obj "value" val
+
+constructDOMHTMLLIElementValue :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLLIElementValue val = constructObjectPropertyInt64 "value" val
+
+data DOMHTMLLIElementValuePropertyInfo
+instance AttrInfo DOMHTMLLIElementValuePropertyInfo where
+    type AttrAllowedOps DOMHTMLLIElementValuePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLIElementValuePropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLLIElementValuePropertyInfo = DOMHTMLLIElementK
+    type AttrGetType DOMHTMLLIElementValuePropertyInfo = Int64
+    type AttrLabel DOMHTMLLIElementValuePropertyInfo = "DOMHTMLLIElement::value"
+    attrGet _ = getDOMHTMLLIElementValue
+    attrSet _ = setDOMHTMLLIElementValue
+    attrConstruct _ = constructDOMHTMLLIElementValue
+
+type instance AttributeList DOMHTMLLIElement = DOMHTMLLIElementAttributeList
+type DOMHTMLLIElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLLIElementTypePropertyInfo), '("value", DOMHTMLLIElementValuePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLLIElement = DOMHTMLLIElementSignalList
+type DOMHTMLLIElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLLIElement::get_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLIElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLIElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_li_element_get_type_attr" webkit_dom_html_li_element_get_type_attr :: 
+    Ptr DOMHTMLLIElement ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLIElement"
+    IO CString
+
+
+dOMHTMLLIElementGetTypeAttr ::
+    (MonadIO m, DOMHTMLLIElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLLIElementGetTypeAttr _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_li_element_get_type_attr _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_li_element_get_type_attr" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLLIElement::get_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLIElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLIElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_li_element_get_value" webkit_dom_html_li_element_get_value :: 
+    Ptr DOMHTMLLIElement ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLIElement"
+    IO Int64
+
+
+dOMHTMLLIElementGetValue ::
+    (MonadIO m, DOMHTMLLIElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLLIElementGetValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_li_element_get_value _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLLIElement::set_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLIElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLIElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_li_element_set_type_attr" webkit_dom_html_li_element_set_type_attr :: 
+    Ptr DOMHTMLLIElement ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLIElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLLIElementSetTypeAttr ::
+    (MonadIO m, DOMHTMLLIElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLLIElementSetTypeAttr _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_li_element_set_type_attr _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLLIElement::set_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLIElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLIElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_li_element_set_value" webkit_dom_html_li_element_set_value :: 
+    Ptr DOMHTMLLIElement ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLIElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLLIElementSetValue ::
+    (MonadIO m, DOMHTMLLIElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLLIElementSetValue _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_li_element_set_value _obj' value
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLLIElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLLIElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLLIElement.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLLIElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLLIElement = DOMHTMLLIElement (ForeignPtr DOMHTMLLIElement)
+instance GObject DOMHTMLLIElement where
+class GObject o => DOMHTMLLIElementK o
+instance (GObject o, IsDescendantOf DOMHTMLLIElement o) => DOMHTMLLIElementK o
+data DOMHTMLLIElementTypePropertyInfo
+data DOMHTMLLIElementValuePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLLabelElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLLabelElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLLabelElement.hs
@@ -0,0 +1,234 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLLabelElement
+    ( 
+
+-- * Exported types
+    DOMHTMLLabelElement(..)                 ,
+    DOMHTMLLabelElementK                    ,
+    toDOMHTMLLabelElement                   ,
+    noDOMHTMLLabelElement                   ,
+
+
+ -- * Methods
+-- ** dOMHTMLLabelElementGetForm
+    dOMHTMLLabelElementGetForm              ,
+
+
+-- ** dOMHTMLLabelElementGetHtmlFor
+    dOMHTMLLabelElementGetHtmlFor           ,
+
+
+-- ** dOMHTMLLabelElementSetHtmlFor
+    dOMHTMLLabelElementSetHtmlFor           ,
+
+
+
+
+ -- * Properties
+-- ** Control
+    DOMHTMLLabelElementControlPropertyInfo  ,
+    getDOMHTMLLabelElementControl           ,
+
+
+-- ** Form
+    DOMHTMLLabelElementFormPropertyInfo     ,
+    getDOMHTMLLabelElementForm              ,
+
+
+-- ** HtmlFor
+    DOMHTMLLabelElementHtmlForPropertyInfo  ,
+    constructDOMHTMLLabelElementHtmlFor     ,
+    getDOMHTMLLabelElementHtmlFor           ,
+    setDOMHTMLLabelElementHtmlFor           ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLLabelElement = DOMHTMLLabelElement (ForeignPtr DOMHTMLLabelElement)
+foreign import ccall "webkit_dom_html_label_element_get_type"
+    c_webkit_dom_html_label_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLLabelElement = DOMHTMLLabelElementParentTypes
+type DOMHTMLLabelElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLLabelElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_label_element_get_type
+    
+
+class GObject o => DOMHTMLLabelElementK o
+instance (GObject o, IsDescendantOf DOMHTMLLabelElement o) => DOMHTMLLabelElementK o
+
+toDOMHTMLLabelElement :: DOMHTMLLabelElementK o => o -> IO DOMHTMLLabelElement
+toDOMHTMLLabelElement = unsafeCastTo DOMHTMLLabelElement
+
+noDOMHTMLLabelElement :: Maybe DOMHTMLLabelElement
+noDOMHTMLLabelElement = Nothing
+
+-- VVV Prop "control"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLElement"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLLabelElementControl :: (MonadIO m, DOMHTMLLabelElementK o) => o -> m DOMHTMLElement
+getDOMHTMLLabelElementControl obj = liftIO $ getObjectPropertyObject obj "control" DOMHTMLElement
+
+data DOMHTMLLabelElementControlPropertyInfo
+instance AttrInfo DOMHTMLLabelElementControlPropertyInfo where
+    type AttrAllowedOps DOMHTMLLabelElementControlPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLabelElementControlPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLLabelElementControlPropertyInfo = DOMHTMLLabelElementK
+    type AttrGetType DOMHTMLLabelElementControlPropertyInfo = DOMHTMLElement
+    type AttrLabel DOMHTMLLabelElementControlPropertyInfo = "DOMHTMLLabelElement::control"
+    attrGet _ = getDOMHTMLLabelElementControl
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "form"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLLabelElementForm :: (MonadIO m, DOMHTMLLabelElementK o) => o -> m DOMHTMLFormElement
+getDOMHTMLLabelElementForm obj = liftIO $ getObjectPropertyObject obj "form" DOMHTMLFormElement
+
+data DOMHTMLLabelElementFormPropertyInfo
+instance AttrInfo DOMHTMLLabelElementFormPropertyInfo where
+    type AttrAllowedOps DOMHTMLLabelElementFormPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLabelElementFormPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLLabelElementFormPropertyInfo = DOMHTMLLabelElementK
+    type AttrGetType DOMHTMLLabelElementFormPropertyInfo = DOMHTMLFormElement
+    type AttrLabel DOMHTMLLabelElementFormPropertyInfo = "DOMHTMLLabelElement::form"
+    attrGet _ = getDOMHTMLLabelElementForm
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "html-for"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLLabelElementHtmlFor :: (MonadIO m, DOMHTMLLabelElementK o) => o -> m T.Text
+getDOMHTMLLabelElementHtmlFor obj = liftIO $ getObjectPropertyString obj "html-for"
+
+setDOMHTMLLabelElementHtmlFor :: (MonadIO m, DOMHTMLLabelElementK o) => o -> T.Text -> m ()
+setDOMHTMLLabelElementHtmlFor obj val = liftIO $ setObjectPropertyString obj "html-for" val
+
+constructDOMHTMLLabelElementHtmlFor :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLLabelElementHtmlFor val = constructObjectPropertyString "html-for" val
+
+data DOMHTMLLabelElementHtmlForPropertyInfo
+instance AttrInfo DOMHTMLLabelElementHtmlForPropertyInfo where
+    type AttrAllowedOps DOMHTMLLabelElementHtmlForPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLabelElementHtmlForPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLLabelElementHtmlForPropertyInfo = DOMHTMLLabelElementK
+    type AttrGetType DOMHTMLLabelElementHtmlForPropertyInfo = T.Text
+    type AttrLabel DOMHTMLLabelElementHtmlForPropertyInfo = "DOMHTMLLabelElement::html-for"
+    attrGet _ = getDOMHTMLLabelElementHtmlFor
+    attrSet _ = setDOMHTMLLabelElementHtmlFor
+    attrConstruct _ = constructDOMHTMLLabelElementHtmlFor
+
+type instance AttributeList DOMHTMLLabelElement = DOMHTMLLabelElementAttributeList
+type DOMHTMLLabelElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("control", DOMHTMLLabelElementControlPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("form", DOMHTMLLabelElementFormPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("html-for", DOMHTMLLabelElementHtmlForPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLLabelElement = DOMHTMLLabelElementSignalList
+type DOMHTMLLabelElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLLabelElement::get_form
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLabelElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLabelElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_label_element_get_form" webkit_dom_html_label_element_get_form :: 
+    Ptr DOMHTMLLabelElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLabelElement"
+    IO (Ptr DOMHTMLFormElement)
+
+
+dOMHTMLLabelElementGetForm ::
+    (MonadIO m, DOMHTMLLabelElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLFormElement
+dOMHTMLLabelElementGetForm _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_label_element_get_form _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_label_element_get_form" result
+    result' <- (newObject DOMHTMLFormElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLLabelElement::get_html_for
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLabelElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLabelElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_label_element_get_html_for" webkit_dom_html_label_element_get_html_for :: 
+    Ptr DOMHTMLLabelElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLabelElement"
+    IO CString
+
+
+dOMHTMLLabelElementGetHtmlFor ::
+    (MonadIO m, DOMHTMLLabelElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLLabelElementGetHtmlFor _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_label_element_get_html_for _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_label_element_get_html_for" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLLabelElement::set_html_for
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLabelElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLabelElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_label_element_set_html_for" webkit_dom_html_label_element_set_html_for :: 
+    Ptr DOMHTMLLabelElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLabelElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLLabelElementSetHtmlFor ::
+    (MonadIO m, DOMHTMLLabelElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLLabelElementSetHtmlFor _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_label_element_set_html_for _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLLabelElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLLabelElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLLabelElement.hs-boot
@@ -0,0 +1,16 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLLabelElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLLabelElement = DOMHTMLLabelElement (ForeignPtr DOMHTMLLabelElement)
+instance GObject DOMHTMLLabelElement where
+class GObject o => DOMHTMLLabelElementK o
+instance (GObject o, IsDescendantOf DOMHTMLLabelElement o) => DOMHTMLLabelElementK o
+data DOMHTMLLabelElementControlPropertyInfo
+data DOMHTMLLabelElementFormPropertyInfo
+data DOMHTMLLabelElementHtmlForPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLLegendElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLLegendElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLLegendElement.hs
@@ -0,0 +1,211 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLLegendElement
+    ( 
+
+-- * Exported types
+    DOMHTMLLegendElement(..)                ,
+    DOMHTMLLegendElementK                   ,
+    toDOMHTMLLegendElement                  ,
+    noDOMHTMLLegendElement                  ,
+
+
+ -- * Methods
+-- ** dOMHTMLLegendElementGetAlign
+    dOMHTMLLegendElementGetAlign            ,
+
+
+-- ** dOMHTMLLegendElementGetForm
+    dOMHTMLLegendElementGetForm             ,
+
+
+-- ** dOMHTMLLegendElementSetAlign
+    dOMHTMLLegendElementSetAlign            ,
+
+
+
+
+ -- * Properties
+-- ** Align
+    DOMHTMLLegendElementAlignPropertyInfo   ,
+    constructDOMHTMLLegendElementAlign      ,
+    getDOMHTMLLegendElementAlign            ,
+    setDOMHTMLLegendElementAlign            ,
+
+
+-- ** Form
+    DOMHTMLLegendElementFormPropertyInfo    ,
+    getDOMHTMLLegendElementForm             ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLLegendElement = DOMHTMLLegendElement (ForeignPtr DOMHTMLLegendElement)
+foreign import ccall "webkit_dom_html_legend_element_get_type"
+    c_webkit_dom_html_legend_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLLegendElement = DOMHTMLLegendElementParentTypes
+type DOMHTMLLegendElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLLegendElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_legend_element_get_type
+    
+
+class GObject o => DOMHTMLLegendElementK o
+instance (GObject o, IsDescendantOf DOMHTMLLegendElement o) => DOMHTMLLegendElementK o
+
+toDOMHTMLLegendElement :: DOMHTMLLegendElementK o => o -> IO DOMHTMLLegendElement
+toDOMHTMLLegendElement = unsafeCastTo DOMHTMLLegendElement
+
+noDOMHTMLLegendElement :: Maybe DOMHTMLLegendElement
+noDOMHTMLLegendElement = Nothing
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLLegendElementAlign :: (MonadIO m, DOMHTMLLegendElementK o) => o -> m T.Text
+getDOMHTMLLegendElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLLegendElementAlign :: (MonadIO m, DOMHTMLLegendElementK o) => o -> T.Text -> m ()
+setDOMHTMLLegendElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLLegendElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLLegendElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLLegendElementAlignPropertyInfo
+instance AttrInfo DOMHTMLLegendElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLLegendElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLegendElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLLegendElementAlignPropertyInfo = DOMHTMLLegendElementK
+    type AttrGetType DOMHTMLLegendElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLLegendElementAlignPropertyInfo = "DOMHTMLLegendElement::align"
+    attrGet _ = getDOMHTMLLegendElementAlign
+    attrSet _ = setDOMHTMLLegendElementAlign
+    attrConstruct _ = constructDOMHTMLLegendElementAlign
+
+-- VVV Prop "form"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLLegendElementForm :: (MonadIO m, DOMHTMLLegendElementK o) => o -> m DOMHTMLFormElement
+getDOMHTMLLegendElementForm obj = liftIO $ getObjectPropertyObject obj "form" DOMHTMLFormElement
+
+data DOMHTMLLegendElementFormPropertyInfo
+instance AttrInfo DOMHTMLLegendElementFormPropertyInfo where
+    type AttrAllowedOps DOMHTMLLegendElementFormPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLegendElementFormPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLLegendElementFormPropertyInfo = DOMHTMLLegendElementK
+    type AttrGetType DOMHTMLLegendElementFormPropertyInfo = DOMHTMLFormElement
+    type AttrLabel DOMHTMLLegendElementFormPropertyInfo = "DOMHTMLLegendElement::form"
+    attrGet _ = getDOMHTMLLegendElementForm
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMHTMLLegendElement = DOMHTMLLegendElementAttributeList
+type DOMHTMLLegendElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLLegendElementAlignPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("form", DOMHTMLLegendElementFormPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLLegendElement = DOMHTMLLegendElementSignalList
+type DOMHTMLLegendElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLLegendElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLegendElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLegendElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_legend_element_get_align" webkit_dom_html_legend_element_get_align :: 
+    Ptr DOMHTMLLegendElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLegendElement"
+    IO CString
+
+
+dOMHTMLLegendElementGetAlign ::
+    (MonadIO m, DOMHTMLLegendElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLLegendElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_legend_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_legend_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLLegendElement::get_form
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLegendElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLegendElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_legend_element_get_form" webkit_dom_html_legend_element_get_form :: 
+    Ptr DOMHTMLLegendElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLegendElement"
+    IO (Ptr DOMHTMLFormElement)
+
+
+dOMHTMLLegendElementGetForm ::
+    (MonadIO m, DOMHTMLLegendElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLFormElement
+dOMHTMLLegendElementGetForm _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_legend_element_get_form _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_legend_element_get_form" result
+    result' <- (newObject DOMHTMLFormElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLLegendElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLegendElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLegendElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_legend_element_set_align" webkit_dom_html_legend_element_set_align :: 
+    Ptr DOMHTMLLegendElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLegendElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLLegendElementSetAlign ::
+    (MonadIO m, DOMHTMLLegendElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLLegendElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_legend_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLLegendElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLLegendElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLLegendElement.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLLegendElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLLegendElement = DOMHTMLLegendElement (ForeignPtr DOMHTMLLegendElement)
+instance GObject DOMHTMLLegendElement where
+class GObject o => DOMHTMLLegendElementK o
+instance (GObject o, IsDescendantOf DOMHTMLLegendElement o) => DOMHTMLLegendElementK o
+data DOMHTMLLegendElementAlignPropertyInfo
+data DOMHTMLLegendElementFormPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLLinkElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLLinkElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLLinkElement.hs
@@ -0,0 +1,960 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLLinkElement
+    ( 
+
+-- * Exported types
+    DOMHTMLLinkElement(..)                  ,
+    DOMHTMLLinkElementK                     ,
+    toDOMHTMLLinkElement                    ,
+    noDOMHTMLLinkElement                    ,
+
+
+ -- * Methods
+-- ** dOMHTMLLinkElementGetCharset
+    dOMHTMLLinkElementGetCharset            ,
+
+
+-- ** dOMHTMLLinkElementGetDisabled
+    dOMHTMLLinkElementGetDisabled           ,
+
+
+-- ** dOMHTMLLinkElementGetHref
+    dOMHTMLLinkElementGetHref               ,
+
+
+-- ** dOMHTMLLinkElementGetHreflang
+    dOMHTMLLinkElementGetHreflang           ,
+
+
+-- ** dOMHTMLLinkElementGetMedia
+    dOMHTMLLinkElementGetMedia              ,
+
+
+-- ** dOMHTMLLinkElementGetRel
+    dOMHTMLLinkElementGetRel                ,
+
+
+-- ** dOMHTMLLinkElementGetRev
+    dOMHTMLLinkElementGetRev                ,
+
+
+-- ** dOMHTMLLinkElementGetSheet
+    dOMHTMLLinkElementGetSheet              ,
+
+
+-- ** dOMHTMLLinkElementGetTarget
+    dOMHTMLLinkElementGetTarget             ,
+
+
+-- ** dOMHTMLLinkElementGetTypeAttr
+    dOMHTMLLinkElementGetTypeAttr           ,
+
+
+-- ** dOMHTMLLinkElementSetCharset
+    dOMHTMLLinkElementSetCharset            ,
+
+
+-- ** dOMHTMLLinkElementSetDisabled
+    dOMHTMLLinkElementSetDisabled           ,
+
+
+-- ** dOMHTMLLinkElementSetHref
+    dOMHTMLLinkElementSetHref               ,
+
+
+-- ** dOMHTMLLinkElementSetHreflang
+    dOMHTMLLinkElementSetHreflang           ,
+
+
+-- ** dOMHTMLLinkElementSetMedia
+    dOMHTMLLinkElementSetMedia              ,
+
+
+-- ** dOMHTMLLinkElementSetRel
+    dOMHTMLLinkElementSetRel                ,
+
+
+-- ** dOMHTMLLinkElementSetRev
+    dOMHTMLLinkElementSetRev                ,
+
+
+-- ** dOMHTMLLinkElementSetTarget
+    dOMHTMLLinkElementSetTarget             ,
+
+
+-- ** dOMHTMLLinkElementSetTypeAttr
+    dOMHTMLLinkElementSetTypeAttr           ,
+
+
+
+
+ -- * Properties
+-- ** Charset
+    DOMHTMLLinkElementCharsetPropertyInfo   ,
+    constructDOMHTMLLinkElementCharset      ,
+    getDOMHTMLLinkElementCharset            ,
+    setDOMHTMLLinkElementCharset            ,
+
+
+-- ** Disabled
+    DOMHTMLLinkElementDisabledPropertyInfo  ,
+    constructDOMHTMLLinkElementDisabled     ,
+    getDOMHTMLLinkElementDisabled           ,
+    setDOMHTMLLinkElementDisabled           ,
+
+
+-- ** Href
+    DOMHTMLLinkElementHrefPropertyInfo      ,
+    constructDOMHTMLLinkElementHref         ,
+    getDOMHTMLLinkElementHref               ,
+    setDOMHTMLLinkElementHref               ,
+
+
+-- ** Hreflang
+    DOMHTMLLinkElementHreflangPropertyInfo  ,
+    constructDOMHTMLLinkElementHreflang     ,
+    getDOMHTMLLinkElementHreflang           ,
+    setDOMHTMLLinkElementHreflang           ,
+
+
+-- ** Media
+    DOMHTMLLinkElementMediaPropertyInfo     ,
+    constructDOMHTMLLinkElementMedia        ,
+    getDOMHTMLLinkElementMedia              ,
+    setDOMHTMLLinkElementMedia              ,
+
+
+-- ** Rel
+    DOMHTMLLinkElementRelPropertyInfo       ,
+    constructDOMHTMLLinkElementRel          ,
+    getDOMHTMLLinkElementRel                ,
+    setDOMHTMLLinkElementRel                ,
+
+
+-- ** Rev
+    DOMHTMLLinkElementRevPropertyInfo       ,
+    constructDOMHTMLLinkElementRev          ,
+    getDOMHTMLLinkElementRev                ,
+    setDOMHTMLLinkElementRev                ,
+
+
+-- ** Sheet
+    DOMHTMLLinkElementSheetPropertyInfo     ,
+    getDOMHTMLLinkElementSheet              ,
+
+
+-- ** Target
+    DOMHTMLLinkElementTargetPropertyInfo    ,
+    constructDOMHTMLLinkElementTarget       ,
+    getDOMHTMLLinkElementTarget             ,
+    setDOMHTMLLinkElementTarget             ,
+
+
+-- ** Type
+    DOMHTMLLinkElementTypePropertyInfo      ,
+    constructDOMHTMLLinkElementType         ,
+    getDOMHTMLLinkElementType               ,
+    setDOMHTMLLinkElementType               ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLLinkElement = DOMHTMLLinkElement (ForeignPtr DOMHTMLLinkElement)
+foreign import ccall "webkit_dom_html_link_element_get_type"
+    c_webkit_dom_html_link_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLLinkElement = DOMHTMLLinkElementParentTypes
+type DOMHTMLLinkElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLLinkElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_link_element_get_type
+    
+
+class GObject o => DOMHTMLLinkElementK o
+instance (GObject o, IsDescendantOf DOMHTMLLinkElement o) => DOMHTMLLinkElementK o
+
+toDOMHTMLLinkElement :: DOMHTMLLinkElementK o => o -> IO DOMHTMLLinkElement
+toDOMHTMLLinkElement = unsafeCastTo DOMHTMLLinkElement
+
+noDOMHTMLLinkElement :: Maybe DOMHTMLLinkElement
+noDOMHTMLLinkElement = Nothing
+
+-- VVV Prop "charset"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLLinkElementCharset :: (MonadIO m, DOMHTMLLinkElementK o) => o -> m T.Text
+getDOMHTMLLinkElementCharset obj = liftIO $ getObjectPropertyString obj "charset"
+
+setDOMHTMLLinkElementCharset :: (MonadIO m, DOMHTMLLinkElementK o) => o -> T.Text -> m ()
+setDOMHTMLLinkElementCharset obj val = liftIO $ setObjectPropertyString obj "charset" val
+
+constructDOMHTMLLinkElementCharset :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLLinkElementCharset val = constructObjectPropertyString "charset" val
+
+data DOMHTMLLinkElementCharsetPropertyInfo
+instance AttrInfo DOMHTMLLinkElementCharsetPropertyInfo where
+    type AttrAllowedOps DOMHTMLLinkElementCharsetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLinkElementCharsetPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLLinkElementCharsetPropertyInfo = DOMHTMLLinkElementK
+    type AttrGetType DOMHTMLLinkElementCharsetPropertyInfo = T.Text
+    type AttrLabel DOMHTMLLinkElementCharsetPropertyInfo = "DOMHTMLLinkElement::charset"
+    attrGet _ = getDOMHTMLLinkElementCharset
+    attrSet _ = setDOMHTMLLinkElementCharset
+    attrConstruct _ = constructDOMHTMLLinkElementCharset
+
+-- VVV Prop "disabled"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLLinkElementDisabled :: (MonadIO m, DOMHTMLLinkElementK o) => o -> m Bool
+getDOMHTMLLinkElementDisabled obj = liftIO $ getObjectPropertyBool obj "disabled"
+
+setDOMHTMLLinkElementDisabled :: (MonadIO m, DOMHTMLLinkElementK o) => o -> Bool -> m ()
+setDOMHTMLLinkElementDisabled obj val = liftIO $ setObjectPropertyBool obj "disabled" val
+
+constructDOMHTMLLinkElementDisabled :: Bool -> IO ([Char], GValue)
+constructDOMHTMLLinkElementDisabled val = constructObjectPropertyBool "disabled" val
+
+data DOMHTMLLinkElementDisabledPropertyInfo
+instance AttrInfo DOMHTMLLinkElementDisabledPropertyInfo where
+    type AttrAllowedOps DOMHTMLLinkElementDisabledPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLinkElementDisabledPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLLinkElementDisabledPropertyInfo = DOMHTMLLinkElementK
+    type AttrGetType DOMHTMLLinkElementDisabledPropertyInfo = Bool
+    type AttrLabel DOMHTMLLinkElementDisabledPropertyInfo = "DOMHTMLLinkElement::disabled"
+    attrGet _ = getDOMHTMLLinkElementDisabled
+    attrSet _ = setDOMHTMLLinkElementDisabled
+    attrConstruct _ = constructDOMHTMLLinkElementDisabled
+
+-- VVV Prop "href"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLLinkElementHref :: (MonadIO m, DOMHTMLLinkElementK o) => o -> m T.Text
+getDOMHTMLLinkElementHref obj = liftIO $ getObjectPropertyString obj "href"
+
+setDOMHTMLLinkElementHref :: (MonadIO m, DOMHTMLLinkElementK o) => o -> T.Text -> m ()
+setDOMHTMLLinkElementHref obj val = liftIO $ setObjectPropertyString obj "href" val
+
+constructDOMHTMLLinkElementHref :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLLinkElementHref val = constructObjectPropertyString "href" val
+
+data DOMHTMLLinkElementHrefPropertyInfo
+instance AttrInfo DOMHTMLLinkElementHrefPropertyInfo where
+    type AttrAllowedOps DOMHTMLLinkElementHrefPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLinkElementHrefPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLLinkElementHrefPropertyInfo = DOMHTMLLinkElementK
+    type AttrGetType DOMHTMLLinkElementHrefPropertyInfo = T.Text
+    type AttrLabel DOMHTMLLinkElementHrefPropertyInfo = "DOMHTMLLinkElement::href"
+    attrGet _ = getDOMHTMLLinkElementHref
+    attrSet _ = setDOMHTMLLinkElementHref
+    attrConstruct _ = constructDOMHTMLLinkElementHref
+
+-- VVV Prop "hreflang"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLLinkElementHreflang :: (MonadIO m, DOMHTMLLinkElementK o) => o -> m T.Text
+getDOMHTMLLinkElementHreflang obj = liftIO $ getObjectPropertyString obj "hreflang"
+
+setDOMHTMLLinkElementHreflang :: (MonadIO m, DOMHTMLLinkElementK o) => o -> T.Text -> m ()
+setDOMHTMLLinkElementHreflang obj val = liftIO $ setObjectPropertyString obj "hreflang" val
+
+constructDOMHTMLLinkElementHreflang :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLLinkElementHreflang val = constructObjectPropertyString "hreflang" val
+
+data DOMHTMLLinkElementHreflangPropertyInfo
+instance AttrInfo DOMHTMLLinkElementHreflangPropertyInfo where
+    type AttrAllowedOps DOMHTMLLinkElementHreflangPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLinkElementHreflangPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLLinkElementHreflangPropertyInfo = DOMHTMLLinkElementK
+    type AttrGetType DOMHTMLLinkElementHreflangPropertyInfo = T.Text
+    type AttrLabel DOMHTMLLinkElementHreflangPropertyInfo = "DOMHTMLLinkElement::hreflang"
+    attrGet _ = getDOMHTMLLinkElementHreflang
+    attrSet _ = setDOMHTMLLinkElementHreflang
+    attrConstruct _ = constructDOMHTMLLinkElementHreflang
+
+-- VVV Prop "media"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLLinkElementMedia :: (MonadIO m, DOMHTMLLinkElementK o) => o -> m T.Text
+getDOMHTMLLinkElementMedia obj = liftIO $ getObjectPropertyString obj "media"
+
+setDOMHTMLLinkElementMedia :: (MonadIO m, DOMHTMLLinkElementK o) => o -> T.Text -> m ()
+setDOMHTMLLinkElementMedia obj val = liftIO $ setObjectPropertyString obj "media" val
+
+constructDOMHTMLLinkElementMedia :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLLinkElementMedia val = constructObjectPropertyString "media" val
+
+data DOMHTMLLinkElementMediaPropertyInfo
+instance AttrInfo DOMHTMLLinkElementMediaPropertyInfo where
+    type AttrAllowedOps DOMHTMLLinkElementMediaPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLinkElementMediaPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLLinkElementMediaPropertyInfo = DOMHTMLLinkElementK
+    type AttrGetType DOMHTMLLinkElementMediaPropertyInfo = T.Text
+    type AttrLabel DOMHTMLLinkElementMediaPropertyInfo = "DOMHTMLLinkElement::media"
+    attrGet _ = getDOMHTMLLinkElementMedia
+    attrSet _ = setDOMHTMLLinkElementMedia
+    attrConstruct _ = constructDOMHTMLLinkElementMedia
+
+-- VVV Prop "rel"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLLinkElementRel :: (MonadIO m, DOMHTMLLinkElementK o) => o -> m T.Text
+getDOMHTMLLinkElementRel obj = liftIO $ getObjectPropertyString obj "rel"
+
+setDOMHTMLLinkElementRel :: (MonadIO m, DOMHTMLLinkElementK o) => o -> T.Text -> m ()
+setDOMHTMLLinkElementRel obj val = liftIO $ setObjectPropertyString obj "rel" val
+
+constructDOMHTMLLinkElementRel :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLLinkElementRel val = constructObjectPropertyString "rel" val
+
+data DOMHTMLLinkElementRelPropertyInfo
+instance AttrInfo DOMHTMLLinkElementRelPropertyInfo where
+    type AttrAllowedOps DOMHTMLLinkElementRelPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLinkElementRelPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLLinkElementRelPropertyInfo = DOMHTMLLinkElementK
+    type AttrGetType DOMHTMLLinkElementRelPropertyInfo = T.Text
+    type AttrLabel DOMHTMLLinkElementRelPropertyInfo = "DOMHTMLLinkElement::rel"
+    attrGet _ = getDOMHTMLLinkElementRel
+    attrSet _ = setDOMHTMLLinkElementRel
+    attrConstruct _ = constructDOMHTMLLinkElementRel
+
+-- VVV Prop "rev"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLLinkElementRev :: (MonadIO m, DOMHTMLLinkElementK o) => o -> m T.Text
+getDOMHTMLLinkElementRev obj = liftIO $ getObjectPropertyString obj "rev"
+
+setDOMHTMLLinkElementRev :: (MonadIO m, DOMHTMLLinkElementK o) => o -> T.Text -> m ()
+setDOMHTMLLinkElementRev obj val = liftIO $ setObjectPropertyString obj "rev" val
+
+constructDOMHTMLLinkElementRev :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLLinkElementRev val = constructObjectPropertyString "rev" val
+
+data DOMHTMLLinkElementRevPropertyInfo
+instance AttrInfo DOMHTMLLinkElementRevPropertyInfo where
+    type AttrAllowedOps DOMHTMLLinkElementRevPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLinkElementRevPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLLinkElementRevPropertyInfo = DOMHTMLLinkElementK
+    type AttrGetType DOMHTMLLinkElementRevPropertyInfo = T.Text
+    type AttrLabel DOMHTMLLinkElementRevPropertyInfo = "DOMHTMLLinkElement::rev"
+    attrGet _ = getDOMHTMLLinkElementRev
+    attrSet _ = setDOMHTMLLinkElementRev
+    attrConstruct _ = constructDOMHTMLLinkElementRev
+
+-- VVV Prop "sheet"
+   -- Type: TInterface "WebKit2WebExtension" "DOMStyleSheet"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLLinkElementSheet :: (MonadIO m, DOMHTMLLinkElementK o) => o -> m DOMStyleSheet
+getDOMHTMLLinkElementSheet obj = liftIO $ getObjectPropertyObject obj "sheet" DOMStyleSheet
+
+data DOMHTMLLinkElementSheetPropertyInfo
+instance AttrInfo DOMHTMLLinkElementSheetPropertyInfo where
+    type AttrAllowedOps DOMHTMLLinkElementSheetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLinkElementSheetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLLinkElementSheetPropertyInfo = DOMHTMLLinkElementK
+    type AttrGetType DOMHTMLLinkElementSheetPropertyInfo = DOMStyleSheet
+    type AttrLabel DOMHTMLLinkElementSheetPropertyInfo = "DOMHTMLLinkElement::sheet"
+    attrGet _ = getDOMHTMLLinkElementSheet
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "target"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLLinkElementTarget :: (MonadIO m, DOMHTMLLinkElementK o) => o -> m T.Text
+getDOMHTMLLinkElementTarget obj = liftIO $ getObjectPropertyString obj "target"
+
+setDOMHTMLLinkElementTarget :: (MonadIO m, DOMHTMLLinkElementK o) => o -> T.Text -> m ()
+setDOMHTMLLinkElementTarget obj val = liftIO $ setObjectPropertyString obj "target" val
+
+constructDOMHTMLLinkElementTarget :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLLinkElementTarget val = constructObjectPropertyString "target" val
+
+data DOMHTMLLinkElementTargetPropertyInfo
+instance AttrInfo DOMHTMLLinkElementTargetPropertyInfo where
+    type AttrAllowedOps DOMHTMLLinkElementTargetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLinkElementTargetPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLLinkElementTargetPropertyInfo = DOMHTMLLinkElementK
+    type AttrGetType DOMHTMLLinkElementTargetPropertyInfo = T.Text
+    type AttrLabel DOMHTMLLinkElementTargetPropertyInfo = "DOMHTMLLinkElement::target"
+    attrGet _ = getDOMHTMLLinkElementTarget
+    attrSet _ = setDOMHTMLLinkElementTarget
+    attrConstruct _ = constructDOMHTMLLinkElementTarget
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLLinkElementType :: (MonadIO m, DOMHTMLLinkElementK o) => o -> m T.Text
+getDOMHTMLLinkElementType obj = liftIO $ getObjectPropertyString obj "type"
+
+setDOMHTMLLinkElementType :: (MonadIO m, DOMHTMLLinkElementK o) => o -> T.Text -> m ()
+setDOMHTMLLinkElementType obj val = liftIO $ setObjectPropertyString obj "type" val
+
+constructDOMHTMLLinkElementType :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLLinkElementType val = constructObjectPropertyString "type" val
+
+data DOMHTMLLinkElementTypePropertyInfo
+instance AttrInfo DOMHTMLLinkElementTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLLinkElementTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLLinkElementTypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLLinkElementTypePropertyInfo = DOMHTMLLinkElementK
+    type AttrGetType DOMHTMLLinkElementTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLLinkElementTypePropertyInfo = "DOMHTMLLinkElement::type"
+    attrGet _ = getDOMHTMLLinkElementType
+    attrSet _ = setDOMHTMLLinkElementType
+    attrConstruct _ = constructDOMHTMLLinkElementType
+
+type instance AttributeList DOMHTMLLinkElement = DOMHTMLLinkElementAttributeList
+type DOMHTMLLinkElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("charset", DOMHTMLLinkElementCharsetPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("disabled", DOMHTMLLinkElementDisabledPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("href", DOMHTMLLinkElementHrefPropertyInfo), '("hreflang", DOMHTMLLinkElementHreflangPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("media", DOMHTMLLinkElementMediaPropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("rel", DOMHTMLLinkElementRelPropertyInfo), '("rev", DOMHTMLLinkElementRevPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("sheet", DOMHTMLLinkElementSheetPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("target", DOMHTMLLinkElementTargetPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLLinkElementTypePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLLinkElement = DOMHTMLLinkElementSignalList
+type DOMHTMLLinkElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLLinkElement::get_charset
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_get_charset" webkit_dom_html_link_element_get_charset :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    IO CString
+
+
+dOMHTMLLinkElementGetCharset ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLLinkElementGetCharset _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_link_element_get_charset _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_link_element_get_charset" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLLinkElement::get_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_get_disabled" webkit_dom_html_link_element_get_disabled :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    IO CInt
+
+
+dOMHTMLLinkElementGetDisabled ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLLinkElementGetDisabled _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_link_element_get_disabled _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLLinkElement::get_href
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_get_href" webkit_dom_html_link_element_get_href :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    IO CString
+
+
+dOMHTMLLinkElementGetHref ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLLinkElementGetHref _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_link_element_get_href _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_link_element_get_href" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLLinkElement::get_hreflang
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_get_hreflang" webkit_dom_html_link_element_get_hreflang :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    IO CString
+
+
+dOMHTMLLinkElementGetHreflang ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLLinkElementGetHreflang _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_link_element_get_hreflang _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_link_element_get_hreflang" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLLinkElement::get_media
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_get_media" webkit_dom_html_link_element_get_media :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    IO CString
+
+
+dOMHTMLLinkElementGetMedia ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLLinkElementGetMedia _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_link_element_get_media _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_link_element_get_media" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLLinkElement::get_rel
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_get_rel" webkit_dom_html_link_element_get_rel :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    IO CString
+
+
+dOMHTMLLinkElementGetRel ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLLinkElementGetRel _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_link_element_get_rel _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_link_element_get_rel" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLLinkElement::get_rev
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_get_rev" webkit_dom_html_link_element_get_rev :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    IO CString
+
+
+dOMHTMLLinkElementGetRev ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLLinkElementGetRev _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_link_element_get_rev _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_link_element_get_rev" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLLinkElement::get_sheet
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMStyleSheet"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_get_sheet" webkit_dom_html_link_element_get_sheet :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    IO (Ptr DOMStyleSheet)
+
+
+dOMHTMLLinkElementGetSheet ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    m DOMStyleSheet
+dOMHTMLLinkElementGetSheet _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_link_element_get_sheet _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_link_element_get_sheet" result
+    result' <- (wrapObject DOMStyleSheet) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLLinkElement::get_target
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_get_target" webkit_dom_html_link_element_get_target :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    IO CString
+
+
+dOMHTMLLinkElementGetTarget ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLLinkElementGetTarget _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_link_element_get_target _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_link_element_get_target" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLLinkElement::get_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_get_type_attr" webkit_dom_html_link_element_get_type_attr :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    IO CString
+
+
+dOMHTMLLinkElementGetTypeAttr ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLLinkElementGetTypeAttr _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_link_element_get_type_attr _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_link_element_get_type_attr" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLLinkElement::set_charset
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_set_charset" webkit_dom_html_link_element_set_charset :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLLinkElementSetCharset ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLLinkElementSetCharset _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_link_element_set_charset _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLLinkElement::set_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_set_disabled" webkit_dom_html_link_element_set_disabled :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLLinkElementSetDisabled ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLLinkElementSetDisabled _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_link_element_set_disabled _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLLinkElement::set_href
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_set_href" webkit_dom_html_link_element_set_href :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLLinkElementSetHref ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLLinkElementSetHref _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_link_element_set_href _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLLinkElement::set_hreflang
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_set_hreflang" webkit_dom_html_link_element_set_hreflang :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLLinkElementSetHreflang ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLLinkElementSetHreflang _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_link_element_set_hreflang _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLLinkElement::set_media
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_set_media" webkit_dom_html_link_element_set_media :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLLinkElementSetMedia ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLLinkElementSetMedia _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_link_element_set_media _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLLinkElement::set_rel
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_set_rel" webkit_dom_html_link_element_set_rel :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLLinkElementSetRel ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLLinkElementSetRel _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_link_element_set_rel _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLLinkElement::set_rev
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_set_rev" webkit_dom_html_link_element_set_rev :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLLinkElementSetRev ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLLinkElementSetRev _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_link_element_set_rev _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLLinkElement::set_target
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_set_target" webkit_dom_html_link_element_set_target :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLLinkElementSetTarget ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLLinkElementSetTarget _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_link_element_set_target _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLLinkElement::set_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLLinkElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_link_element_set_type_attr" webkit_dom_html_link_element_set_type_attr :: 
+    Ptr DOMHTMLLinkElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLLinkElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLLinkElementSetTypeAttr ::
+    (MonadIO m, DOMHTMLLinkElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLLinkElementSetTypeAttr _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_link_element_set_type_attr _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLLinkElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLLinkElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLLinkElement.hs-boot
@@ -0,0 +1,23 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLLinkElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLLinkElement = DOMHTMLLinkElement (ForeignPtr DOMHTMLLinkElement)
+instance GObject DOMHTMLLinkElement where
+class GObject o => DOMHTMLLinkElementK o
+instance (GObject o, IsDescendantOf DOMHTMLLinkElement o) => DOMHTMLLinkElementK o
+data DOMHTMLLinkElementCharsetPropertyInfo
+data DOMHTMLLinkElementDisabledPropertyInfo
+data DOMHTMLLinkElementHrefPropertyInfo
+data DOMHTMLLinkElementHreflangPropertyInfo
+data DOMHTMLLinkElementMediaPropertyInfo
+data DOMHTMLLinkElementRelPropertyInfo
+data DOMHTMLLinkElementRevPropertyInfo
+data DOMHTMLLinkElementSheetPropertyInfo
+data DOMHTMLLinkElementTargetPropertyInfo
+data DOMHTMLLinkElementTypePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLMapElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLMapElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLMapElement.hs
@@ -0,0 +1,211 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLMapElement
+    ( 
+
+-- * Exported types
+    DOMHTMLMapElement(..)                   ,
+    DOMHTMLMapElementK                      ,
+    toDOMHTMLMapElement                     ,
+    noDOMHTMLMapElement                     ,
+
+
+ -- * Methods
+-- ** dOMHTMLMapElementGetAreas
+    dOMHTMLMapElementGetAreas               ,
+
+
+-- ** dOMHTMLMapElementGetName
+    dOMHTMLMapElementGetName                ,
+
+
+-- ** dOMHTMLMapElementSetName
+    dOMHTMLMapElementSetName                ,
+
+
+
+
+ -- * Properties
+-- ** Areas
+    DOMHTMLMapElementAreasPropertyInfo      ,
+    getDOMHTMLMapElementAreas               ,
+
+
+-- ** Name
+    DOMHTMLMapElementNamePropertyInfo       ,
+    constructDOMHTMLMapElementName          ,
+    getDOMHTMLMapElementName                ,
+    setDOMHTMLMapElementName                ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLMapElement = DOMHTMLMapElement (ForeignPtr DOMHTMLMapElement)
+foreign import ccall "webkit_dom_html_map_element_get_type"
+    c_webkit_dom_html_map_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLMapElement = DOMHTMLMapElementParentTypes
+type DOMHTMLMapElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLMapElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_map_element_get_type
+    
+
+class GObject o => DOMHTMLMapElementK o
+instance (GObject o, IsDescendantOf DOMHTMLMapElement o) => DOMHTMLMapElementK o
+
+toDOMHTMLMapElement :: DOMHTMLMapElementK o => o -> IO DOMHTMLMapElement
+toDOMHTMLMapElement = unsafeCastTo DOMHTMLMapElement
+
+noDOMHTMLMapElement :: Maybe DOMHTMLMapElement
+noDOMHTMLMapElement = Nothing
+
+-- VVV Prop "areas"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLMapElementAreas :: (MonadIO m, DOMHTMLMapElementK o) => o -> m DOMHTMLCollection
+getDOMHTMLMapElementAreas obj = liftIO $ getObjectPropertyObject obj "areas" DOMHTMLCollection
+
+data DOMHTMLMapElementAreasPropertyInfo
+instance AttrInfo DOMHTMLMapElementAreasPropertyInfo where
+    type AttrAllowedOps DOMHTMLMapElementAreasPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMapElementAreasPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLMapElementAreasPropertyInfo = DOMHTMLMapElementK
+    type AttrGetType DOMHTMLMapElementAreasPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMHTMLMapElementAreasPropertyInfo = "DOMHTMLMapElement::areas"
+    attrGet _ = getDOMHTMLMapElementAreas
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMapElementName :: (MonadIO m, DOMHTMLMapElementK o) => o -> m T.Text
+getDOMHTMLMapElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLMapElementName :: (MonadIO m, DOMHTMLMapElementK o) => o -> T.Text -> m ()
+setDOMHTMLMapElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLMapElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLMapElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLMapElementNamePropertyInfo
+instance AttrInfo DOMHTMLMapElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLMapElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMapElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLMapElementNamePropertyInfo = DOMHTMLMapElementK
+    type AttrGetType DOMHTMLMapElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLMapElementNamePropertyInfo = "DOMHTMLMapElement::name"
+    attrGet _ = getDOMHTMLMapElementName
+    attrSet _ = setDOMHTMLMapElementName
+    attrConstruct _ = constructDOMHTMLMapElementName
+
+type instance AttributeList DOMHTMLMapElement = DOMHTMLMapElementAttributeList
+type DOMHTMLMapElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("areas", DOMHTMLMapElementAreasPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("name", DOMHTMLMapElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLMapElement = DOMHTMLMapElementSignalList
+type DOMHTMLMapElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLMapElement::get_areas
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMapElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMapElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_map_element_get_areas" webkit_dom_html_map_element_get_areas :: 
+    Ptr DOMHTMLMapElement ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLMapElement"
+    IO (Ptr DOMHTMLCollection)
+
+
+dOMHTMLMapElementGetAreas ::
+    (MonadIO m, DOMHTMLMapElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLCollection
+dOMHTMLMapElementGetAreas _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_map_element_get_areas _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_map_element_get_areas" result
+    result' <- (wrapObject DOMHTMLCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLMapElement::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMapElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMapElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_map_element_get_name" webkit_dom_html_map_element_get_name :: 
+    Ptr DOMHTMLMapElement ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLMapElement"
+    IO CString
+
+
+dOMHTMLMapElementGetName ::
+    (MonadIO m, DOMHTMLMapElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLMapElementGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_map_element_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_map_element_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLMapElement::set_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMapElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMapElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_map_element_set_name" webkit_dom_html_map_element_set_name :: 
+    Ptr DOMHTMLMapElement ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLMapElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLMapElementSetName ::
+    (MonadIO m, DOMHTMLMapElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLMapElementSetName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_map_element_set_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLMapElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLMapElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLMapElement.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLMapElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLMapElement = DOMHTMLMapElement (ForeignPtr DOMHTMLMapElement)
+instance GObject DOMHTMLMapElement where
+class GObject o => DOMHTMLMapElementK o
+instance (GObject o, IsDescendantOf DOMHTMLMapElement o) => DOMHTMLMapElementK o
+data DOMHTMLMapElementAreasPropertyInfo
+data DOMHTMLMapElementNamePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLMarqueeElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLMarqueeElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLMarqueeElement.hs
@@ -0,0 +1,461 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLMarqueeElement
+    ( 
+
+-- * Exported types
+    DOMHTMLMarqueeElement(..)               ,
+    DOMHTMLMarqueeElementK                  ,
+    toDOMHTMLMarqueeElement                 ,
+    noDOMHTMLMarqueeElement                 ,
+
+
+ -- * Methods
+-- ** dOMHTMLMarqueeElementStart
+    dOMHTMLMarqueeElementStart              ,
+
+
+-- ** dOMHTMLMarqueeElementStop
+    dOMHTMLMarqueeElementStop               ,
+
+
+
+
+ -- * Properties
+-- ** Behavior
+    DOMHTMLMarqueeElementBehaviorPropertyInfo,
+    constructDOMHTMLMarqueeElementBehavior  ,
+    getDOMHTMLMarqueeElementBehavior        ,
+    setDOMHTMLMarqueeElementBehavior        ,
+
+
+-- ** BgColor
+    DOMHTMLMarqueeElementBgColorPropertyInfo,
+    constructDOMHTMLMarqueeElementBgColor   ,
+    getDOMHTMLMarqueeElementBgColor         ,
+    setDOMHTMLMarqueeElementBgColor         ,
+
+
+-- ** Direction
+    DOMHTMLMarqueeElementDirectionPropertyInfo,
+    constructDOMHTMLMarqueeElementDirection ,
+    getDOMHTMLMarqueeElementDirection       ,
+    setDOMHTMLMarqueeElementDirection       ,
+
+
+-- ** Height
+    DOMHTMLMarqueeElementHeightPropertyInfo ,
+    constructDOMHTMLMarqueeElementHeight    ,
+    getDOMHTMLMarqueeElementHeight          ,
+    setDOMHTMLMarqueeElementHeight          ,
+
+
+-- ** Hspace
+    DOMHTMLMarqueeElementHspacePropertyInfo ,
+    constructDOMHTMLMarqueeElementHspace    ,
+    getDOMHTMLMarqueeElementHspace          ,
+    setDOMHTMLMarqueeElementHspace          ,
+
+
+-- ** Loop
+    DOMHTMLMarqueeElementLoopPropertyInfo   ,
+    constructDOMHTMLMarqueeElementLoop      ,
+    getDOMHTMLMarqueeElementLoop            ,
+    setDOMHTMLMarqueeElementLoop            ,
+
+
+-- ** ScrollAmount
+    DOMHTMLMarqueeElementScrollAmountPropertyInfo,
+    constructDOMHTMLMarqueeElementScrollAmount,
+    getDOMHTMLMarqueeElementScrollAmount    ,
+    setDOMHTMLMarqueeElementScrollAmount    ,
+
+
+-- ** ScrollDelay
+    DOMHTMLMarqueeElementScrollDelayPropertyInfo,
+    constructDOMHTMLMarqueeElementScrollDelay,
+    getDOMHTMLMarqueeElementScrollDelay     ,
+    setDOMHTMLMarqueeElementScrollDelay     ,
+
+
+-- ** TrueSpeed
+    DOMHTMLMarqueeElementTrueSpeedPropertyInfo,
+    constructDOMHTMLMarqueeElementTrueSpeed ,
+    getDOMHTMLMarqueeElementTrueSpeed       ,
+    setDOMHTMLMarqueeElementTrueSpeed       ,
+
+
+-- ** Vspace
+    DOMHTMLMarqueeElementVspacePropertyInfo ,
+    constructDOMHTMLMarqueeElementVspace    ,
+    getDOMHTMLMarqueeElementVspace          ,
+    setDOMHTMLMarqueeElementVspace          ,
+
+
+-- ** Width
+    DOMHTMLMarqueeElementWidthPropertyInfo  ,
+    constructDOMHTMLMarqueeElementWidth     ,
+    getDOMHTMLMarqueeElementWidth           ,
+    setDOMHTMLMarqueeElementWidth           ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLMarqueeElement = DOMHTMLMarqueeElement (ForeignPtr DOMHTMLMarqueeElement)
+foreign import ccall "webkit_dom_html_marquee_element_get_type"
+    c_webkit_dom_html_marquee_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLMarqueeElement = DOMHTMLMarqueeElementParentTypes
+type DOMHTMLMarqueeElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLMarqueeElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_marquee_element_get_type
+    
+
+class GObject o => DOMHTMLMarqueeElementK o
+instance (GObject o, IsDescendantOf DOMHTMLMarqueeElement o) => DOMHTMLMarqueeElementK o
+
+toDOMHTMLMarqueeElement :: DOMHTMLMarqueeElementK o => o -> IO DOMHTMLMarqueeElement
+toDOMHTMLMarqueeElement = unsafeCastTo DOMHTMLMarqueeElement
+
+noDOMHTMLMarqueeElement :: Maybe DOMHTMLMarqueeElement
+noDOMHTMLMarqueeElement = Nothing
+
+-- VVV Prop "behavior"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMarqueeElementBehavior :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> m T.Text
+getDOMHTMLMarqueeElementBehavior obj = liftIO $ getObjectPropertyString obj "behavior"
+
+setDOMHTMLMarqueeElementBehavior :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> T.Text -> m ()
+setDOMHTMLMarqueeElementBehavior obj val = liftIO $ setObjectPropertyString obj "behavior" val
+
+constructDOMHTMLMarqueeElementBehavior :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLMarqueeElementBehavior val = constructObjectPropertyString "behavior" val
+
+data DOMHTMLMarqueeElementBehaviorPropertyInfo
+instance AttrInfo DOMHTMLMarqueeElementBehaviorPropertyInfo where
+    type AttrAllowedOps DOMHTMLMarqueeElementBehaviorPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMarqueeElementBehaviorPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLMarqueeElementBehaviorPropertyInfo = DOMHTMLMarqueeElementK
+    type AttrGetType DOMHTMLMarqueeElementBehaviorPropertyInfo = T.Text
+    type AttrLabel DOMHTMLMarqueeElementBehaviorPropertyInfo = "DOMHTMLMarqueeElement::behavior"
+    attrGet _ = getDOMHTMLMarqueeElementBehavior
+    attrSet _ = setDOMHTMLMarqueeElementBehavior
+    attrConstruct _ = constructDOMHTMLMarqueeElementBehavior
+
+-- VVV Prop "bg-color"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMarqueeElementBgColor :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> m T.Text
+getDOMHTMLMarqueeElementBgColor obj = liftIO $ getObjectPropertyString obj "bg-color"
+
+setDOMHTMLMarqueeElementBgColor :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> T.Text -> m ()
+setDOMHTMLMarqueeElementBgColor obj val = liftIO $ setObjectPropertyString obj "bg-color" val
+
+constructDOMHTMLMarqueeElementBgColor :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLMarqueeElementBgColor val = constructObjectPropertyString "bg-color" val
+
+data DOMHTMLMarqueeElementBgColorPropertyInfo
+instance AttrInfo DOMHTMLMarqueeElementBgColorPropertyInfo where
+    type AttrAllowedOps DOMHTMLMarqueeElementBgColorPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMarqueeElementBgColorPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLMarqueeElementBgColorPropertyInfo = DOMHTMLMarqueeElementK
+    type AttrGetType DOMHTMLMarqueeElementBgColorPropertyInfo = T.Text
+    type AttrLabel DOMHTMLMarqueeElementBgColorPropertyInfo = "DOMHTMLMarqueeElement::bg-color"
+    attrGet _ = getDOMHTMLMarqueeElementBgColor
+    attrSet _ = setDOMHTMLMarqueeElementBgColor
+    attrConstruct _ = constructDOMHTMLMarqueeElementBgColor
+
+-- VVV Prop "direction"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMarqueeElementDirection :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> m T.Text
+getDOMHTMLMarqueeElementDirection obj = liftIO $ getObjectPropertyString obj "direction"
+
+setDOMHTMLMarqueeElementDirection :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> T.Text -> m ()
+setDOMHTMLMarqueeElementDirection obj val = liftIO $ setObjectPropertyString obj "direction" val
+
+constructDOMHTMLMarqueeElementDirection :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLMarqueeElementDirection val = constructObjectPropertyString "direction" val
+
+data DOMHTMLMarqueeElementDirectionPropertyInfo
+instance AttrInfo DOMHTMLMarqueeElementDirectionPropertyInfo where
+    type AttrAllowedOps DOMHTMLMarqueeElementDirectionPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMarqueeElementDirectionPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLMarqueeElementDirectionPropertyInfo = DOMHTMLMarqueeElementK
+    type AttrGetType DOMHTMLMarqueeElementDirectionPropertyInfo = T.Text
+    type AttrLabel DOMHTMLMarqueeElementDirectionPropertyInfo = "DOMHTMLMarqueeElement::direction"
+    attrGet _ = getDOMHTMLMarqueeElementDirection
+    attrSet _ = setDOMHTMLMarqueeElementDirection
+    attrConstruct _ = constructDOMHTMLMarqueeElementDirection
+
+-- VVV Prop "height"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMarqueeElementHeight :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> m T.Text
+getDOMHTMLMarqueeElementHeight obj = liftIO $ getObjectPropertyString obj "height"
+
+setDOMHTMLMarqueeElementHeight :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> T.Text -> m ()
+setDOMHTMLMarqueeElementHeight obj val = liftIO $ setObjectPropertyString obj "height" val
+
+constructDOMHTMLMarqueeElementHeight :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLMarqueeElementHeight val = constructObjectPropertyString "height" val
+
+data DOMHTMLMarqueeElementHeightPropertyInfo
+instance AttrInfo DOMHTMLMarqueeElementHeightPropertyInfo where
+    type AttrAllowedOps DOMHTMLMarqueeElementHeightPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMarqueeElementHeightPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLMarqueeElementHeightPropertyInfo = DOMHTMLMarqueeElementK
+    type AttrGetType DOMHTMLMarqueeElementHeightPropertyInfo = T.Text
+    type AttrLabel DOMHTMLMarqueeElementHeightPropertyInfo = "DOMHTMLMarqueeElement::height"
+    attrGet _ = getDOMHTMLMarqueeElementHeight
+    attrSet _ = setDOMHTMLMarqueeElementHeight
+    attrConstruct _ = constructDOMHTMLMarqueeElementHeight
+
+-- VVV Prop "hspace"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMarqueeElementHspace :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> m Word64
+getDOMHTMLMarqueeElementHspace obj = liftIO $ getObjectPropertyUInt64 obj "hspace"
+
+setDOMHTMLMarqueeElementHspace :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> Word64 -> m ()
+setDOMHTMLMarqueeElementHspace obj val = liftIO $ setObjectPropertyUInt64 obj "hspace" val
+
+constructDOMHTMLMarqueeElementHspace :: Word64 -> IO ([Char], GValue)
+constructDOMHTMLMarqueeElementHspace val = constructObjectPropertyUInt64 "hspace" val
+
+data DOMHTMLMarqueeElementHspacePropertyInfo
+instance AttrInfo DOMHTMLMarqueeElementHspacePropertyInfo where
+    type AttrAllowedOps DOMHTMLMarqueeElementHspacePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMarqueeElementHspacePropertyInfo = (~) Word64
+    type AttrBaseTypeConstraint DOMHTMLMarqueeElementHspacePropertyInfo = DOMHTMLMarqueeElementK
+    type AttrGetType DOMHTMLMarqueeElementHspacePropertyInfo = Word64
+    type AttrLabel DOMHTMLMarqueeElementHspacePropertyInfo = "DOMHTMLMarqueeElement::hspace"
+    attrGet _ = getDOMHTMLMarqueeElementHspace
+    attrSet _ = setDOMHTMLMarqueeElementHspace
+    attrConstruct _ = constructDOMHTMLMarqueeElementHspace
+
+-- VVV Prop "loop"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMarqueeElementLoop :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> m Int64
+getDOMHTMLMarqueeElementLoop obj = liftIO $ getObjectPropertyInt64 obj "loop"
+
+setDOMHTMLMarqueeElementLoop :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> Int64 -> m ()
+setDOMHTMLMarqueeElementLoop obj val = liftIO $ setObjectPropertyInt64 obj "loop" val
+
+constructDOMHTMLMarqueeElementLoop :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLMarqueeElementLoop val = constructObjectPropertyInt64 "loop" val
+
+data DOMHTMLMarqueeElementLoopPropertyInfo
+instance AttrInfo DOMHTMLMarqueeElementLoopPropertyInfo where
+    type AttrAllowedOps DOMHTMLMarqueeElementLoopPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMarqueeElementLoopPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLMarqueeElementLoopPropertyInfo = DOMHTMLMarqueeElementK
+    type AttrGetType DOMHTMLMarqueeElementLoopPropertyInfo = Int64
+    type AttrLabel DOMHTMLMarqueeElementLoopPropertyInfo = "DOMHTMLMarqueeElement::loop"
+    attrGet _ = getDOMHTMLMarqueeElementLoop
+    attrSet _ = setDOMHTMLMarqueeElementLoop
+    attrConstruct _ = constructDOMHTMLMarqueeElementLoop
+
+-- VVV Prop "scroll-amount"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMarqueeElementScrollAmount :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> m Int64
+getDOMHTMLMarqueeElementScrollAmount obj = liftIO $ getObjectPropertyInt64 obj "scroll-amount"
+
+setDOMHTMLMarqueeElementScrollAmount :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> Int64 -> m ()
+setDOMHTMLMarqueeElementScrollAmount obj val = liftIO $ setObjectPropertyInt64 obj "scroll-amount" val
+
+constructDOMHTMLMarqueeElementScrollAmount :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLMarqueeElementScrollAmount val = constructObjectPropertyInt64 "scroll-amount" val
+
+data DOMHTMLMarqueeElementScrollAmountPropertyInfo
+instance AttrInfo DOMHTMLMarqueeElementScrollAmountPropertyInfo where
+    type AttrAllowedOps DOMHTMLMarqueeElementScrollAmountPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMarqueeElementScrollAmountPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLMarqueeElementScrollAmountPropertyInfo = DOMHTMLMarqueeElementK
+    type AttrGetType DOMHTMLMarqueeElementScrollAmountPropertyInfo = Int64
+    type AttrLabel DOMHTMLMarqueeElementScrollAmountPropertyInfo = "DOMHTMLMarqueeElement::scroll-amount"
+    attrGet _ = getDOMHTMLMarqueeElementScrollAmount
+    attrSet _ = setDOMHTMLMarqueeElementScrollAmount
+    attrConstruct _ = constructDOMHTMLMarqueeElementScrollAmount
+
+-- VVV Prop "scroll-delay"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMarqueeElementScrollDelay :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> m Int64
+getDOMHTMLMarqueeElementScrollDelay obj = liftIO $ getObjectPropertyInt64 obj "scroll-delay"
+
+setDOMHTMLMarqueeElementScrollDelay :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> Int64 -> m ()
+setDOMHTMLMarqueeElementScrollDelay obj val = liftIO $ setObjectPropertyInt64 obj "scroll-delay" val
+
+constructDOMHTMLMarqueeElementScrollDelay :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLMarqueeElementScrollDelay val = constructObjectPropertyInt64 "scroll-delay" val
+
+data DOMHTMLMarqueeElementScrollDelayPropertyInfo
+instance AttrInfo DOMHTMLMarqueeElementScrollDelayPropertyInfo where
+    type AttrAllowedOps DOMHTMLMarqueeElementScrollDelayPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMarqueeElementScrollDelayPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLMarqueeElementScrollDelayPropertyInfo = DOMHTMLMarqueeElementK
+    type AttrGetType DOMHTMLMarqueeElementScrollDelayPropertyInfo = Int64
+    type AttrLabel DOMHTMLMarqueeElementScrollDelayPropertyInfo = "DOMHTMLMarqueeElement::scroll-delay"
+    attrGet _ = getDOMHTMLMarqueeElementScrollDelay
+    attrSet _ = setDOMHTMLMarqueeElementScrollDelay
+    attrConstruct _ = constructDOMHTMLMarqueeElementScrollDelay
+
+-- VVV Prop "true-speed"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMarqueeElementTrueSpeed :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> m Bool
+getDOMHTMLMarqueeElementTrueSpeed obj = liftIO $ getObjectPropertyBool obj "true-speed"
+
+setDOMHTMLMarqueeElementTrueSpeed :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> Bool -> m ()
+setDOMHTMLMarqueeElementTrueSpeed obj val = liftIO $ setObjectPropertyBool obj "true-speed" val
+
+constructDOMHTMLMarqueeElementTrueSpeed :: Bool -> IO ([Char], GValue)
+constructDOMHTMLMarqueeElementTrueSpeed val = constructObjectPropertyBool "true-speed" val
+
+data DOMHTMLMarqueeElementTrueSpeedPropertyInfo
+instance AttrInfo DOMHTMLMarqueeElementTrueSpeedPropertyInfo where
+    type AttrAllowedOps DOMHTMLMarqueeElementTrueSpeedPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMarqueeElementTrueSpeedPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLMarqueeElementTrueSpeedPropertyInfo = DOMHTMLMarqueeElementK
+    type AttrGetType DOMHTMLMarqueeElementTrueSpeedPropertyInfo = Bool
+    type AttrLabel DOMHTMLMarqueeElementTrueSpeedPropertyInfo = "DOMHTMLMarqueeElement::true-speed"
+    attrGet _ = getDOMHTMLMarqueeElementTrueSpeed
+    attrSet _ = setDOMHTMLMarqueeElementTrueSpeed
+    attrConstruct _ = constructDOMHTMLMarqueeElementTrueSpeed
+
+-- VVV Prop "vspace"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMarqueeElementVspace :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> m Word64
+getDOMHTMLMarqueeElementVspace obj = liftIO $ getObjectPropertyUInt64 obj "vspace"
+
+setDOMHTMLMarqueeElementVspace :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> Word64 -> m ()
+setDOMHTMLMarqueeElementVspace obj val = liftIO $ setObjectPropertyUInt64 obj "vspace" val
+
+constructDOMHTMLMarqueeElementVspace :: Word64 -> IO ([Char], GValue)
+constructDOMHTMLMarqueeElementVspace val = constructObjectPropertyUInt64 "vspace" val
+
+data DOMHTMLMarqueeElementVspacePropertyInfo
+instance AttrInfo DOMHTMLMarqueeElementVspacePropertyInfo where
+    type AttrAllowedOps DOMHTMLMarqueeElementVspacePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMarqueeElementVspacePropertyInfo = (~) Word64
+    type AttrBaseTypeConstraint DOMHTMLMarqueeElementVspacePropertyInfo = DOMHTMLMarqueeElementK
+    type AttrGetType DOMHTMLMarqueeElementVspacePropertyInfo = Word64
+    type AttrLabel DOMHTMLMarqueeElementVspacePropertyInfo = "DOMHTMLMarqueeElement::vspace"
+    attrGet _ = getDOMHTMLMarqueeElementVspace
+    attrSet _ = setDOMHTMLMarqueeElementVspace
+    attrConstruct _ = constructDOMHTMLMarqueeElementVspace
+
+-- VVV Prop "width"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMarqueeElementWidth :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> m T.Text
+getDOMHTMLMarqueeElementWidth obj = liftIO $ getObjectPropertyString obj "width"
+
+setDOMHTMLMarqueeElementWidth :: (MonadIO m, DOMHTMLMarqueeElementK o) => o -> T.Text -> m ()
+setDOMHTMLMarqueeElementWidth obj val = liftIO $ setObjectPropertyString obj "width" val
+
+constructDOMHTMLMarqueeElementWidth :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLMarqueeElementWidth val = constructObjectPropertyString "width" val
+
+data DOMHTMLMarqueeElementWidthPropertyInfo
+instance AttrInfo DOMHTMLMarqueeElementWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLMarqueeElementWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMarqueeElementWidthPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLMarqueeElementWidthPropertyInfo = DOMHTMLMarqueeElementK
+    type AttrGetType DOMHTMLMarqueeElementWidthPropertyInfo = T.Text
+    type AttrLabel DOMHTMLMarqueeElementWidthPropertyInfo = "DOMHTMLMarqueeElement::width"
+    attrGet _ = getDOMHTMLMarqueeElementWidth
+    attrSet _ = setDOMHTMLMarqueeElementWidth
+    attrConstruct _ = constructDOMHTMLMarqueeElementWidth
+
+type instance AttributeList DOMHTMLMarqueeElement = DOMHTMLMarqueeElementAttributeList
+type DOMHTMLMarqueeElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("behavior", DOMHTMLMarqueeElementBehaviorPropertyInfo), '("bg-color", DOMHTMLMarqueeElementBgColorPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("direction", DOMHTMLMarqueeElementDirectionPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("height", DOMHTMLMarqueeElementHeightPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("hspace", DOMHTMLMarqueeElementHspacePropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("loop", DOMHTMLMarqueeElementLoopPropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-amount", DOMHTMLMarqueeElementScrollAmountPropertyInfo), '("scroll-delay", DOMHTMLMarqueeElementScrollDelayPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("true-speed", DOMHTMLMarqueeElementTrueSpeedPropertyInfo), '("vspace", DOMHTMLMarqueeElementVspacePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("width", DOMHTMLMarqueeElementWidthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLMarqueeElement = DOMHTMLMarqueeElementSignalList
+type DOMHTMLMarqueeElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLMarqueeElement::start
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMarqueeElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMarqueeElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_marquee_element_start" webkit_dom_html_marquee_element_start :: 
+    Ptr DOMHTMLMarqueeElement ->            -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLMarqueeElement"
+    IO ()
+
+
+dOMHTMLMarqueeElementStart ::
+    (MonadIO m, DOMHTMLMarqueeElementK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMHTMLMarqueeElementStart _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_marquee_element_start _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLMarqueeElement::stop
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMarqueeElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMarqueeElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_marquee_element_stop" webkit_dom_html_marquee_element_stop :: 
+    Ptr DOMHTMLMarqueeElement ->            -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLMarqueeElement"
+    IO ()
+
+
+dOMHTMLMarqueeElementStop ::
+    (MonadIO m, DOMHTMLMarqueeElementK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMHTMLMarqueeElementStop _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_marquee_element_stop _obj'
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLMarqueeElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLMarqueeElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLMarqueeElement.hs-boot
@@ -0,0 +1,24 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLMarqueeElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLMarqueeElement = DOMHTMLMarqueeElement (ForeignPtr DOMHTMLMarqueeElement)
+instance GObject DOMHTMLMarqueeElement where
+class GObject o => DOMHTMLMarqueeElementK o
+instance (GObject o, IsDescendantOf DOMHTMLMarqueeElement o) => DOMHTMLMarqueeElementK o
+data DOMHTMLMarqueeElementBehaviorPropertyInfo
+data DOMHTMLMarqueeElementBgColorPropertyInfo
+data DOMHTMLMarqueeElementDirectionPropertyInfo
+data DOMHTMLMarqueeElementHeightPropertyInfo
+data DOMHTMLMarqueeElementHspacePropertyInfo
+data DOMHTMLMarqueeElementLoopPropertyInfo
+data DOMHTMLMarqueeElementScrollAmountPropertyInfo
+data DOMHTMLMarqueeElementScrollDelayPropertyInfo
+data DOMHTMLMarqueeElementTrueSpeedPropertyInfo
+data DOMHTMLMarqueeElementVspacePropertyInfo
+data DOMHTMLMarqueeElementWidthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLMenuElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLMenuElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLMenuElement.hs
@@ -0,0 +1,155 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLMenuElement
+    ( 
+
+-- * Exported types
+    DOMHTMLMenuElement(..)                  ,
+    DOMHTMLMenuElementK                     ,
+    toDOMHTMLMenuElement                    ,
+    noDOMHTMLMenuElement                    ,
+
+
+ -- * Methods
+-- ** dOMHTMLMenuElementGetCompact
+    dOMHTMLMenuElementGetCompact            ,
+
+
+-- ** dOMHTMLMenuElementSetCompact
+    dOMHTMLMenuElementSetCompact            ,
+
+
+
+
+ -- * Properties
+-- ** Compact
+    DOMHTMLMenuElementCompactPropertyInfo   ,
+    constructDOMHTMLMenuElementCompact      ,
+    getDOMHTMLMenuElementCompact            ,
+    setDOMHTMLMenuElementCompact            ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLMenuElement = DOMHTMLMenuElement (ForeignPtr DOMHTMLMenuElement)
+foreign import ccall "webkit_dom_html_menu_element_get_type"
+    c_webkit_dom_html_menu_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLMenuElement = DOMHTMLMenuElementParentTypes
+type DOMHTMLMenuElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLMenuElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_menu_element_get_type
+    
+
+class GObject o => DOMHTMLMenuElementK o
+instance (GObject o, IsDescendantOf DOMHTMLMenuElement o) => DOMHTMLMenuElementK o
+
+toDOMHTMLMenuElement :: DOMHTMLMenuElementK o => o -> IO DOMHTMLMenuElement
+toDOMHTMLMenuElement = unsafeCastTo DOMHTMLMenuElement
+
+noDOMHTMLMenuElement :: Maybe DOMHTMLMenuElement
+noDOMHTMLMenuElement = Nothing
+
+-- VVV Prop "compact"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMenuElementCompact :: (MonadIO m, DOMHTMLMenuElementK o) => o -> m Bool
+getDOMHTMLMenuElementCompact obj = liftIO $ getObjectPropertyBool obj "compact"
+
+setDOMHTMLMenuElementCompact :: (MonadIO m, DOMHTMLMenuElementK o) => o -> Bool -> m ()
+setDOMHTMLMenuElementCompact obj val = liftIO $ setObjectPropertyBool obj "compact" val
+
+constructDOMHTMLMenuElementCompact :: Bool -> IO ([Char], GValue)
+constructDOMHTMLMenuElementCompact val = constructObjectPropertyBool "compact" val
+
+data DOMHTMLMenuElementCompactPropertyInfo
+instance AttrInfo DOMHTMLMenuElementCompactPropertyInfo where
+    type AttrAllowedOps DOMHTMLMenuElementCompactPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMenuElementCompactPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLMenuElementCompactPropertyInfo = DOMHTMLMenuElementK
+    type AttrGetType DOMHTMLMenuElementCompactPropertyInfo = Bool
+    type AttrLabel DOMHTMLMenuElementCompactPropertyInfo = "DOMHTMLMenuElement::compact"
+    attrGet _ = getDOMHTMLMenuElementCompact
+    attrSet _ = setDOMHTMLMenuElementCompact
+    attrConstruct _ = constructDOMHTMLMenuElementCompact
+
+type instance AttributeList DOMHTMLMenuElement = DOMHTMLMenuElementAttributeList
+type DOMHTMLMenuElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("compact", DOMHTMLMenuElementCompactPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLMenuElement = DOMHTMLMenuElementSignalList
+type DOMHTMLMenuElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLMenuElement::get_compact
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMenuElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMenuElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_menu_element_get_compact" webkit_dom_html_menu_element_get_compact :: 
+    Ptr DOMHTMLMenuElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLMenuElement"
+    IO CInt
+
+
+dOMHTMLMenuElementGetCompact ::
+    (MonadIO m, DOMHTMLMenuElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLMenuElementGetCompact _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_menu_element_get_compact _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLMenuElement::set_compact
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMenuElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMenuElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_menu_element_set_compact" webkit_dom_html_menu_element_set_compact :: 
+    Ptr DOMHTMLMenuElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLMenuElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLMenuElementSetCompact ::
+    (MonadIO m, DOMHTMLMenuElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLMenuElementSetCompact _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_menu_element_set_compact _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLMenuElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLMenuElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLMenuElement.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLMenuElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLMenuElement = DOMHTMLMenuElement (ForeignPtr DOMHTMLMenuElement)
+instance GObject DOMHTMLMenuElement where
+class GObject o => DOMHTMLMenuElementK o
+instance (GObject o, IsDescendantOf DOMHTMLMenuElement o) => DOMHTMLMenuElementK o
+data DOMHTMLMenuElementCompactPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLMetaElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLMetaElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLMetaElement.hs
@@ -0,0 +1,440 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLMetaElement
+    ( 
+
+-- * Exported types
+    DOMHTMLMetaElement(..)                  ,
+    DOMHTMLMetaElementK                     ,
+    toDOMHTMLMetaElement                    ,
+    noDOMHTMLMetaElement                    ,
+
+
+ -- * Methods
+-- ** dOMHTMLMetaElementGetContent
+    dOMHTMLMetaElementGetContent            ,
+
+
+-- ** dOMHTMLMetaElementGetHttpEquiv
+    dOMHTMLMetaElementGetHttpEquiv          ,
+
+
+-- ** dOMHTMLMetaElementGetName
+    dOMHTMLMetaElementGetName               ,
+
+
+-- ** dOMHTMLMetaElementGetScheme
+    dOMHTMLMetaElementGetScheme             ,
+
+
+-- ** dOMHTMLMetaElementSetContent
+    dOMHTMLMetaElementSetContent            ,
+
+
+-- ** dOMHTMLMetaElementSetHttpEquiv
+    dOMHTMLMetaElementSetHttpEquiv          ,
+
+
+-- ** dOMHTMLMetaElementSetName
+    dOMHTMLMetaElementSetName               ,
+
+
+-- ** dOMHTMLMetaElementSetScheme
+    dOMHTMLMetaElementSetScheme             ,
+
+
+
+
+ -- * Properties
+-- ** Content
+    DOMHTMLMetaElementContentPropertyInfo   ,
+    constructDOMHTMLMetaElementContent      ,
+    getDOMHTMLMetaElementContent            ,
+    setDOMHTMLMetaElementContent            ,
+
+
+-- ** HttpEquiv
+    DOMHTMLMetaElementHttpEquivPropertyInfo ,
+    constructDOMHTMLMetaElementHttpEquiv    ,
+    getDOMHTMLMetaElementHttpEquiv          ,
+    setDOMHTMLMetaElementHttpEquiv          ,
+
+
+-- ** Name
+    DOMHTMLMetaElementNamePropertyInfo      ,
+    constructDOMHTMLMetaElementName         ,
+    getDOMHTMLMetaElementName               ,
+    setDOMHTMLMetaElementName               ,
+
+
+-- ** Scheme
+    DOMHTMLMetaElementSchemePropertyInfo    ,
+    constructDOMHTMLMetaElementScheme       ,
+    getDOMHTMLMetaElementScheme             ,
+    setDOMHTMLMetaElementScheme             ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLMetaElement = DOMHTMLMetaElement (ForeignPtr DOMHTMLMetaElement)
+foreign import ccall "webkit_dom_html_meta_element_get_type"
+    c_webkit_dom_html_meta_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLMetaElement = DOMHTMLMetaElementParentTypes
+type DOMHTMLMetaElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLMetaElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_meta_element_get_type
+    
+
+class GObject o => DOMHTMLMetaElementK o
+instance (GObject o, IsDescendantOf DOMHTMLMetaElement o) => DOMHTMLMetaElementK o
+
+toDOMHTMLMetaElement :: DOMHTMLMetaElementK o => o -> IO DOMHTMLMetaElement
+toDOMHTMLMetaElement = unsafeCastTo DOMHTMLMetaElement
+
+noDOMHTMLMetaElement :: Maybe DOMHTMLMetaElement
+noDOMHTMLMetaElement = Nothing
+
+-- VVV Prop "content"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMetaElementContent :: (MonadIO m, DOMHTMLMetaElementK o) => o -> m T.Text
+getDOMHTMLMetaElementContent obj = liftIO $ getObjectPropertyString obj "content"
+
+setDOMHTMLMetaElementContent :: (MonadIO m, DOMHTMLMetaElementK o) => o -> T.Text -> m ()
+setDOMHTMLMetaElementContent obj val = liftIO $ setObjectPropertyString obj "content" val
+
+constructDOMHTMLMetaElementContent :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLMetaElementContent val = constructObjectPropertyString "content" val
+
+data DOMHTMLMetaElementContentPropertyInfo
+instance AttrInfo DOMHTMLMetaElementContentPropertyInfo where
+    type AttrAllowedOps DOMHTMLMetaElementContentPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMetaElementContentPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLMetaElementContentPropertyInfo = DOMHTMLMetaElementK
+    type AttrGetType DOMHTMLMetaElementContentPropertyInfo = T.Text
+    type AttrLabel DOMHTMLMetaElementContentPropertyInfo = "DOMHTMLMetaElement::content"
+    attrGet _ = getDOMHTMLMetaElementContent
+    attrSet _ = setDOMHTMLMetaElementContent
+    attrConstruct _ = constructDOMHTMLMetaElementContent
+
+-- VVV Prop "http-equiv"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMetaElementHttpEquiv :: (MonadIO m, DOMHTMLMetaElementK o) => o -> m T.Text
+getDOMHTMLMetaElementHttpEquiv obj = liftIO $ getObjectPropertyString obj "http-equiv"
+
+setDOMHTMLMetaElementHttpEquiv :: (MonadIO m, DOMHTMLMetaElementK o) => o -> T.Text -> m ()
+setDOMHTMLMetaElementHttpEquiv obj val = liftIO $ setObjectPropertyString obj "http-equiv" val
+
+constructDOMHTMLMetaElementHttpEquiv :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLMetaElementHttpEquiv val = constructObjectPropertyString "http-equiv" val
+
+data DOMHTMLMetaElementHttpEquivPropertyInfo
+instance AttrInfo DOMHTMLMetaElementHttpEquivPropertyInfo where
+    type AttrAllowedOps DOMHTMLMetaElementHttpEquivPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMetaElementHttpEquivPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLMetaElementHttpEquivPropertyInfo = DOMHTMLMetaElementK
+    type AttrGetType DOMHTMLMetaElementHttpEquivPropertyInfo = T.Text
+    type AttrLabel DOMHTMLMetaElementHttpEquivPropertyInfo = "DOMHTMLMetaElement::http-equiv"
+    attrGet _ = getDOMHTMLMetaElementHttpEquiv
+    attrSet _ = setDOMHTMLMetaElementHttpEquiv
+    attrConstruct _ = constructDOMHTMLMetaElementHttpEquiv
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMetaElementName :: (MonadIO m, DOMHTMLMetaElementK o) => o -> m T.Text
+getDOMHTMLMetaElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLMetaElementName :: (MonadIO m, DOMHTMLMetaElementK o) => o -> T.Text -> m ()
+setDOMHTMLMetaElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLMetaElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLMetaElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLMetaElementNamePropertyInfo
+instance AttrInfo DOMHTMLMetaElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLMetaElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMetaElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLMetaElementNamePropertyInfo = DOMHTMLMetaElementK
+    type AttrGetType DOMHTMLMetaElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLMetaElementNamePropertyInfo = "DOMHTMLMetaElement::name"
+    attrGet _ = getDOMHTMLMetaElementName
+    attrSet _ = setDOMHTMLMetaElementName
+    attrConstruct _ = constructDOMHTMLMetaElementName
+
+-- VVV Prop "scheme"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLMetaElementScheme :: (MonadIO m, DOMHTMLMetaElementK o) => o -> m T.Text
+getDOMHTMLMetaElementScheme obj = liftIO $ getObjectPropertyString obj "scheme"
+
+setDOMHTMLMetaElementScheme :: (MonadIO m, DOMHTMLMetaElementK o) => o -> T.Text -> m ()
+setDOMHTMLMetaElementScheme obj val = liftIO $ setObjectPropertyString obj "scheme" val
+
+constructDOMHTMLMetaElementScheme :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLMetaElementScheme val = constructObjectPropertyString "scheme" val
+
+data DOMHTMLMetaElementSchemePropertyInfo
+instance AttrInfo DOMHTMLMetaElementSchemePropertyInfo where
+    type AttrAllowedOps DOMHTMLMetaElementSchemePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLMetaElementSchemePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLMetaElementSchemePropertyInfo = DOMHTMLMetaElementK
+    type AttrGetType DOMHTMLMetaElementSchemePropertyInfo = T.Text
+    type AttrLabel DOMHTMLMetaElementSchemePropertyInfo = "DOMHTMLMetaElement::scheme"
+    attrGet _ = getDOMHTMLMetaElementScheme
+    attrSet _ = setDOMHTMLMetaElementScheme
+    attrConstruct _ = constructDOMHTMLMetaElementScheme
+
+type instance AttributeList DOMHTMLMetaElement = DOMHTMLMetaElementAttributeList
+type DOMHTMLMetaElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content", DOMHTMLMetaElementContentPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("http-equiv", DOMHTMLMetaElementHttpEquivPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("name", DOMHTMLMetaElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scheme", DOMHTMLMetaElementSchemePropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLMetaElement = DOMHTMLMetaElementSignalList
+type DOMHTMLMetaElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLMetaElement::get_content
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_meta_element_get_content" webkit_dom_html_meta_element_get_content :: 
+    Ptr DOMHTMLMetaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLMetaElement"
+    IO CString
+
+
+dOMHTMLMetaElementGetContent ::
+    (MonadIO m, DOMHTMLMetaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLMetaElementGetContent _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_meta_element_get_content _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_meta_element_get_content" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLMetaElement::get_http_equiv
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_meta_element_get_http_equiv" webkit_dom_html_meta_element_get_http_equiv :: 
+    Ptr DOMHTMLMetaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLMetaElement"
+    IO CString
+
+
+dOMHTMLMetaElementGetHttpEquiv ::
+    (MonadIO m, DOMHTMLMetaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLMetaElementGetHttpEquiv _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_meta_element_get_http_equiv _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_meta_element_get_http_equiv" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLMetaElement::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_meta_element_get_name" webkit_dom_html_meta_element_get_name :: 
+    Ptr DOMHTMLMetaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLMetaElement"
+    IO CString
+
+
+dOMHTMLMetaElementGetName ::
+    (MonadIO m, DOMHTMLMetaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLMetaElementGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_meta_element_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_meta_element_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLMetaElement::get_scheme
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_meta_element_get_scheme" webkit_dom_html_meta_element_get_scheme :: 
+    Ptr DOMHTMLMetaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLMetaElement"
+    IO CString
+
+
+dOMHTMLMetaElementGetScheme ::
+    (MonadIO m, DOMHTMLMetaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLMetaElementGetScheme _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_meta_element_get_scheme _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_meta_element_get_scheme" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLMetaElement::set_content
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_meta_element_set_content" webkit_dom_html_meta_element_set_content :: 
+    Ptr DOMHTMLMetaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLMetaElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLMetaElementSetContent ::
+    (MonadIO m, DOMHTMLMetaElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLMetaElementSetContent _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_meta_element_set_content _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLMetaElement::set_http_equiv
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_meta_element_set_http_equiv" webkit_dom_html_meta_element_set_http_equiv :: 
+    Ptr DOMHTMLMetaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLMetaElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLMetaElementSetHttpEquiv ::
+    (MonadIO m, DOMHTMLMetaElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLMetaElementSetHttpEquiv _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_meta_element_set_http_equiv _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLMetaElement::set_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_meta_element_set_name" webkit_dom_html_meta_element_set_name :: 
+    Ptr DOMHTMLMetaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLMetaElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLMetaElementSetName ::
+    (MonadIO m, DOMHTMLMetaElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLMetaElementSetName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_meta_element_set_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLMetaElement::set_scheme
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLMetaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_meta_element_set_scheme" webkit_dom_html_meta_element_set_scheme :: 
+    Ptr DOMHTMLMetaElement ->               -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLMetaElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLMetaElementSetScheme ::
+    (MonadIO m, DOMHTMLMetaElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLMetaElementSetScheme _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_meta_element_set_scheme _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLMetaElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLMetaElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLMetaElement.hs-boot
@@ -0,0 +1,17 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLMetaElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLMetaElement = DOMHTMLMetaElement (ForeignPtr DOMHTMLMetaElement)
+instance GObject DOMHTMLMetaElement where
+class GObject o => DOMHTMLMetaElementK o
+instance (GObject o, IsDescendantOf DOMHTMLMetaElement o) => DOMHTMLMetaElementK o
+data DOMHTMLMetaElementContentPropertyInfo
+data DOMHTMLMetaElementHttpEquivPropertyInfo
+data DOMHTMLMetaElementNamePropertyInfo
+data DOMHTMLMetaElementSchemePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLModElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLModElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLModElement.hs
@@ -0,0 +1,252 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLModElement
+    ( 
+
+-- * Exported types
+    DOMHTMLModElement(..)                   ,
+    DOMHTMLModElementK                      ,
+    toDOMHTMLModElement                     ,
+    noDOMHTMLModElement                     ,
+
+
+ -- * Methods
+-- ** dOMHTMLModElementGetCite
+    dOMHTMLModElementGetCite                ,
+
+
+-- ** dOMHTMLModElementGetDateTime
+    dOMHTMLModElementGetDateTime            ,
+
+
+-- ** dOMHTMLModElementSetCite
+    dOMHTMLModElementSetCite                ,
+
+
+-- ** dOMHTMLModElementSetDateTime
+    dOMHTMLModElementSetDateTime            ,
+
+
+
+
+ -- * Properties
+-- ** Cite
+    DOMHTMLModElementCitePropertyInfo       ,
+    constructDOMHTMLModElementCite          ,
+    getDOMHTMLModElementCite                ,
+    setDOMHTMLModElementCite                ,
+
+
+-- ** DateTime
+    DOMHTMLModElementDateTimePropertyInfo   ,
+    constructDOMHTMLModElementDateTime      ,
+    getDOMHTMLModElementDateTime            ,
+    setDOMHTMLModElementDateTime            ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLModElement = DOMHTMLModElement (ForeignPtr DOMHTMLModElement)
+foreign import ccall "webkit_dom_html_mod_element_get_type"
+    c_webkit_dom_html_mod_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLModElement = DOMHTMLModElementParentTypes
+type DOMHTMLModElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLModElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_mod_element_get_type
+    
+
+class GObject o => DOMHTMLModElementK o
+instance (GObject o, IsDescendantOf DOMHTMLModElement o) => DOMHTMLModElementK o
+
+toDOMHTMLModElement :: DOMHTMLModElementK o => o -> IO DOMHTMLModElement
+toDOMHTMLModElement = unsafeCastTo DOMHTMLModElement
+
+noDOMHTMLModElement :: Maybe DOMHTMLModElement
+noDOMHTMLModElement = Nothing
+
+-- VVV Prop "cite"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLModElementCite :: (MonadIO m, DOMHTMLModElementK o) => o -> m T.Text
+getDOMHTMLModElementCite obj = liftIO $ getObjectPropertyString obj "cite"
+
+setDOMHTMLModElementCite :: (MonadIO m, DOMHTMLModElementK o) => o -> T.Text -> m ()
+setDOMHTMLModElementCite obj val = liftIO $ setObjectPropertyString obj "cite" val
+
+constructDOMHTMLModElementCite :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLModElementCite val = constructObjectPropertyString "cite" val
+
+data DOMHTMLModElementCitePropertyInfo
+instance AttrInfo DOMHTMLModElementCitePropertyInfo where
+    type AttrAllowedOps DOMHTMLModElementCitePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLModElementCitePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLModElementCitePropertyInfo = DOMHTMLModElementK
+    type AttrGetType DOMHTMLModElementCitePropertyInfo = T.Text
+    type AttrLabel DOMHTMLModElementCitePropertyInfo = "DOMHTMLModElement::cite"
+    attrGet _ = getDOMHTMLModElementCite
+    attrSet _ = setDOMHTMLModElementCite
+    attrConstruct _ = constructDOMHTMLModElementCite
+
+-- VVV Prop "date-time"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLModElementDateTime :: (MonadIO m, DOMHTMLModElementK o) => o -> m T.Text
+getDOMHTMLModElementDateTime obj = liftIO $ getObjectPropertyString obj "date-time"
+
+setDOMHTMLModElementDateTime :: (MonadIO m, DOMHTMLModElementK o) => o -> T.Text -> m ()
+setDOMHTMLModElementDateTime obj val = liftIO $ setObjectPropertyString obj "date-time" val
+
+constructDOMHTMLModElementDateTime :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLModElementDateTime val = constructObjectPropertyString "date-time" val
+
+data DOMHTMLModElementDateTimePropertyInfo
+instance AttrInfo DOMHTMLModElementDateTimePropertyInfo where
+    type AttrAllowedOps DOMHTMLModElementDateTimePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLModElementDateTimePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLModElementDateTimePropertyInfo = DOMHTMLModElementK
+    type AttrGetType DOMHTMLModElementDateTimePropertyInfo = T.Text
+    type AttrLabel DOMHTMLModElementDateTimePropertyInfo = "DOMHTMLModElement::date-time"
+    attrGet _ = getDOMHTMLModElementDateTime
+    attrSet _ = setDOMHTMLModElementDateTime
+    attrConstruct _ = constructDOMHTMLModElementDateTime
+
+type instance AttributeList DOMHTMLModElement = DOMHTMLModElementAttributeList
+type DOMHTMLModElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("cite", DOMHTMLModElementCitePropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("date-time", DOMHTMLModElementDateTimePropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLModElement = DOMHTMLModElementSignalList
+type DOMHTMLModElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLModElement::get_cite
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLModElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLModElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_mod_element_get_cite" webkit_dom_html_mod_element_get_cite :: 
+    Ptr DOMHTMLModElement ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLModElement"
+    IO CString
+
+
+dOMHTMLModElementGetCite ::
+    (MonadIO m, DOMHTMLModElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLModElementGetCite _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_mod_element_get_cite _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_mod_element_get_cite" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLModElement::get_date_time
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLModElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLModElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_mod_element_get_date_time" webkit_dom_html_mod_element_get_date_time :: 
+    Ptr DOMHTMLModElement ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLModElement"
+    IO CString
+
+
+dOMHTMLModElementGetDateTime ::
+    (MonadIO m, DOMHTMLModElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLModElementGetDateTime _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_mod_element_get_date_time _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_mod_element_get_date_time" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLModElement::set_cite
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLModElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLModElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_mod_element_set_cite" webkit_dom_html_mod_element_set_cite :: 
+    Ptr DOMHTMLModElement ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLModElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLModElementSetCite ::
+    (MonadIO m, DOMHTMLModElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLModElementSetCite _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_mod_element_set_cite _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLModElement::set_date_time
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLModElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLModElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_mod_element_set_date_time" webkit_dom_html_mod_element_set_date_time :: 
+    Ptr DOMHTMLModElement ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLModElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLModElementSetDateTime ::
+    (MonadIO m, DOMHTMLModElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLModElementSetDateTime _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_mod_element_set_date_time _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLModElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLModElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLModElement.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLModElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLModElement = DOMHTMLModElement (ForeignPtr DOMHTMLModElement)
+instance GObject DOMHTMLModElement where
+class GObject o => DOMHTMLModElementK o
+instance (GObject o, IsDescendantOf DOMHTMLModElement o) => DOMHTMLModElementK o
+data DOMHTMLModElementCitePropertyInfo
+data DOMHTMLModElementDateTimePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLOListElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLOListElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLOListElement.hs
@@ -0,0 +1,369 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLOListElement
+    ( 
+
+-- * Exported types
+    DOMHTMLOListElement(..)                 ,
+    DOMHTMLOListElementK                    ,
+    toDOMHTMLOListElement                   ,
+    noDOMHTMLOListElement                   ,
+
+
+ -- * Methods
+-- ** dOMHTMLOListElementGetCompact
+    dOMHTMLOListElementGetCompact           ,
+
+
+-- ** dOMHTMLOListElementGetStart
+    dOMHTMLOListElementGetStart             ,
+
+
+-- ** dOMHTMLOListElementGetTypeAttr
+    dOMHTMLOListElementGetTypeAttr          ,
+
+
+-- ** dOMHTMLOListElementSetCompact
+    dOMHTMLOListElementSetCompact           ,
+
+
+-- ** dOMHTMLOListElementSetStart
+    dOMHTMLOListElementSetStart             ,
+
+
+-- ** dOMHTMLOListElementSetTypeAttr
+    dOMHTMLOListElementSetTypeAttr          ,
+
+
+
+
+ -- * Properties
+-- ** Compact
+    DOMHTMLOListElementCompactPropertyInfo  ,
+    constructDOMHTMLOListElementCompact     ,
+    getDOMHTMLOListElementCompact           ,
+    setDOMHTMLOListElementCompact           ,
+
+
+-- ** Reversed
+    DOMHTMLOListElementReversedPropertyInfo ,
+    constructDOMHTMLOListElementReversed    ,
+    getDOMHTMLOListElementReversed          ,
+    setDOMHTMLOListElementReversed          ,
+
+
+-- ** Start
+    DOMHTMLOListElementStartPropertyInfo    ,
+    constructDOMHTMLOListElementStart       ,
+    getDOMHTMLOListElementStart             ,
+    setDOMHTMLOListElementStart             ,
+
+
+-- ** Type
+    DOMHTMLOListElementTypePropertyInfo     ,
+    constructDOMHTMLOListElementType        ,
+    getDOMHTMLOListElementType              ,
+    setDOMHTMLOListElementType              ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLOListElement = DOMHTMLOListElement (ForeignPtr DOMHTMLOListElement)
+foreign import ccall "webkit_dom_html_o_list_element_get_type"
+    c_webkit_dom_html_o_list_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLOListElement = DOMHTMLOListElementParentTypes
+type DOMHTMLOListElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLOListElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_o_list_element_get_type
+    
+
+class GObject o => DOMHTMLOListElementK o
+instance (GObject o, IsDescendantOf DOMHTMLOListElement o) => DOMHTMLOListElementK o
+
+toDOMHTMLOListElement :: DOMHTMLOListElementK o => o -> IO DOMHTMLOListElement
+toDOMHTMLOListElement = unsafeCastTo DOMHTMLOListElement
+
+noDOMHTMLOListElement :: Maybe DOMHTMLOListElement
+noDOMHTMLOListElement = Nothing
+
+-- VVV Prop "compact"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLOListElementCompact :: (MonadIO m, DOMHTMLOListElementK o) => o -> m Bool
+getDOMHTMLOListElementCompact obj = liftIO $ getObjectPropertyBool obj "compact"
+
+setDOMHTMLOListElementCompact :: (MonadIO m, DOMHTMLOListElementK o) => o -> Bool -> m ()
+setDOMHTMLOListElementCompact obj val = liftIO $ setObjectPropertyBool obj "compact" val
+
+constructDOMHTMLOListElementCompact :: Bool -> IO ([Char], GValue)
+constructDOMHTMLOListElementCompact val = constructObjectPropertyBool "compact" val
+
+data DOMHTMLOListElementCompactPropertyInfo
+instance AttrInfo DOMHTMLOListElementCompactPropertyInfo where
+    type AttrAllowedOps DOMHTMLOListElementCompactPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOListElementCompactPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLOListElementCompactPropertyInfo = DOMHTMLOListElementK
+    type AttrGetType DOMHTMLOListElementCompactPropertyInfo = Bool
+    type AttrLabel DOMHTMLOListElementCompactPropertyInfo = "DOMHTMLOListElement::compact"
+    attrGet _ = getDOMHTMLOListElementCompact
+    attrSet _ = setDOMHTMLOListElementCompact
+    attrConstruct _ = constructDOMHTMLOListElementCompact
+
+-- VVV Prop "reversed"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLOListElementReversed :: (MonadIO m, DOMHTMLOListElementK o) => o -> m Bool
+getDOMHTMLOListElementReversed obj = liftIO $ getObjectPropertyBool obj "reversed"
+
+setDOMHTMLOListElementReversed :: (MonadIO m, DOMHTMLOListElementK o) => o -> Bool -> m ()
+setDOMHTMLOListElementReversed obj val = liftIO $ setObjectPropertyBool obj "reversed" val
+
+constructDOMHTMLOListElementReversed :: Bool -> IO ([Char], GValue)
+constructDOMHTMLOListElementReversed val = constructObjectPropertyBool "reversed" val
+
+data DOMHTMLOListElementReversedPropertyInfo
+instance AttrInfo DOMHTMLOListElementReversedPropertyInfo where
+    type AttrAllowedOps DOMHTMLOListElementReversedPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOListElementReversedPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLOListElementReversedPropertyInfo = DOMHTMLOListElementK
+    type AttrGetType DOMHTMLOListElementReversedPropertyInfo = Bool
+    type AttrLabel DOMHTMLOListElementReversedPropertyInfo = "DOMHTMLOListElement::reversed"
+    attrGet _ = getDOMHTMLOListElementReversed
+    attrSet _ = setDOMHTMLOListElementReversed
+    attrConstruct _ = constructDOMHTMLOListElementReversed
+
+-- VVV Prop "start"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLOListElementStart :: (MonadIO m, DOMHTMLOListElementK o) => o -> m Int64
+getDOMHTMLOListElementStart obj = liftIO $ getObjectPropertyInt64 obj "start"
+
+setDOMHTMLOListElementStart :: (MonadIO m, DOMHTMLOListElementK o) => o -> Int64 -> m ()
+setDOMHTMLOListElementStart obj val = liftIO $ setObjectPropertyInt64 obj "start" val
+
+constructDOMHTMLOListElementStart :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLOListElementStart val = constructObjectPropertyInt64 "start" val
+
+data DOMHTMLOListElementStartPropertyInfo
+instance AttrInfo DOMHTMLOListElementStartPropertyInfo where
+    type AttrAllowedOps DOMHTMLOListElementStartPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOListElementStartPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLOListElementStartPropertyInfo = DOMHTMLOListElementK
+    type AttrGetType DOMHTMLOListElementStartPropertyInfo = Int64
+    type AttrLabel DOMHTMLOListElementStartPropertyInfo = "DOMHTMLOListElement::start"
+    attrGet _ = getDOMHTMLOListElementStart
+    attrSet _ = setDOMHTMLOListElementStart
+    attrConstruct _ = constructDOMHTMLOListElementStart
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLOListElementType :: (MonadIO m, DOMHTMLOListElementK o) => o -> m T.Text
+getDOMHTMLOListElementType obj = liftIO $ getObjectPropertyString obj "type"
+
+setDOMHTMLOListElementType :: (MonadIO m, DOMHTMLOListElementK o) => o -> T.Text -> m ()
+setDOMHTMLOListElementType obj val = liftIO $ setObjectPropertyString obj "type" val
+
+constructDOMHTMLOListElementType :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLOListElementType val = constructObjectPropertyString "type" val
+
+data DOMHTMLOListElementTypePropertyInfo
+instance AttrInfo DOMHTMLOListElementTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLOListElementTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOListElementTypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLOListElementTypePropertyInfo = DOMHTMLOListElementK
+    type AttrGetType DOMHTMLOListElementTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLOListElementTypePropertyInfo = "DOMHTMLOListElement::type"
+    attrGet _ = getDOMHTMLOListElementType
+    attrSet _ = setDOMHTMLOListElementType
+    attrConstruct _ = constructDOMHTMLOListElementType
+
+type instance AttributeList DOMHTMLOListElement = DOMHTMLOListElementAttributeList
+type DOMHTMLOListElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("compact", DOMHTMLOListElementCompactPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("reversed", DOMHTMLOListElementReversedPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("start", DOMHTMLOListElementStartPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLOListElementTypePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLOListElement = DOMHTMLOListElementSignalList
+type DOMHTMLOListElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLOListElement::get_compact
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_o_list_element_get_compact" webkit_dom_html_o_list_element_get_compact :: 
+    Ptr DOMHTMLOListElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOListElement"
+    IO CInt
+
+
+dOMHTMLOListElementGetCompact ::
+    (MonadIO m, DOMHTMLOListElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLOListElementGetCompact _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_o_list_element_get_compact _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLOListElement::get_start
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_o_list_element_get_start" webkit_dom_html_o_list_element_get_start :: 
+    Ptr DOMHTMLOListElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOListElement"
+    IO Int64
+
+
+dOMHTMLOListElementGetStart ::
+    (MonadIO m, DOMHTMLOListElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLOListElementGetStart _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_o_list_element_get_start _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLOListElement::get_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_o_list_element_get_type_attr" webkit_dom_html_o_list_element_get_type_attr :: 
+    Ptr DOMHTMLOListElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOListElement"
+    IO CString
+
+
+dOMHTMLOListElementGetTypeAttr ::
+    (MonadIO m, DOMHTMLOListElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLOListElementGetTypeAttr _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_o_list_element_get_type_attr _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_o_list_element_get_type_attr" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLOListElement::set_compact
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_o_list_element_set_compact" webkit_dom_html_o_list_element_set_compact :: 
+    Ptr DOMHTMLOListElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOListElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLOListElementSetCompact ::
+    (MonadIO m, DOMHTMLOListElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLOListElementSetCompact _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_o_list_element_set_compact _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLOListElement::set_start
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_o_list_element_set_start" webkit_dom_html_o_list_element_set_start :: 
+    Ptr DOMHTMLOListElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOListElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLOListElementSetStart ::
+    (MonadIO m, DOMHTMLOListElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLOListElementSetStart _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_o_list_element_set_start _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLOListElement::set_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_o_list_element_set_type_attr" webkit_dom_html_o_list_element_set_type_attr :: 
+    Ptr DOMHTMLOListElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOListElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLOListElementSetTypeAttr ::
+    (MonadIO m, DOMHTMLOListElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLOListElementSetTypeAttr _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_o_list_element_set_type_attr _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLOListElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLOListElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLOListElement.hs-boot
@@ -0,0 +1,17 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLOListElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLOListElement = DOMHTMLOListElement (ForeignPtr DOMHTMLOListElement)
+instance GObject DOMHTMLOListElement where
+class GObject o => DOMHTMLOListElementK o
+instance (GObject o, IsDescendantOf DOMHTMLOListElement o) => DOMHTMLOListElementK o
+data DOMHTMLOListElementCompactPropertyInfo
+data DOMHTMLOListElementReversedPropertyInfo
+data DOMHTMLOListElementStartPropertyInfo
+data DOMHTMLOListElementTypePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLObjectElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLObjectElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLObjectElement.hs
@@ -0,0 +1,1707 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLObjectElement
+    ( 
+
+-- * Exported types
+    DOMHTMLObjectElement(..)                ,
+    DOMHTMLObjectElementK                   ,
+    toDOMHTMLObjectElement                  ,
+    noDOMHTMLObjectElement                  ,
+
+
+ -- * Methods
+-- ** dOMHTMLObjectElementGetAlign
+    dOMHTMLObjectElementGetAlign            ,
+
+
+-- ** dOMHTMLObjectElementGetArchive
+    dOMHTMLObjectElementGetArchive          ,
+
+
+-- ** dOMHTMLObjectElementGetBorder
+    dOMHTMLObjectElementGetBorder           ,
+
+
+-- ** dOMHTMLObjectElementGetCode
+    dOMHTMLObjectElementGetCode             ,
+
+
+-- ** dOMHTMLObjectElementGetCodeBase
+    dOMHTMLObjectElementGetCodeBase         ,
+
+
+-- ** dOMHTMLObjectElementGetCodeType
+    dOMHTMLObjectElementGetCodeType         ,
+
+
+-- ** dOMHTMLObjectElementGetContentDocument
+    dOMHTMLObjectElementGetContentDocument  ,
+
+
+-- ** dOMHTMLObjectElementGetData
+    dOMHTMLObjectElementGetData             ,
+
+
+-- ** dOMHTMLObjectElementGetDeclare
+    dOMHTMLObjectElementGetDeclare          ,
+
+
+-- ** dOMHTMLObjectElementGetForm
+    dOMHTMLObjectElementGetForm             ,
+
+
+-- ** dOMHTMLObjectElementGetHeight
+    dOMHTMLObjectElementGetHeight           ,
+
+
+-- ** dOMHTMLObjectElementGetHspace
+    dOMHTMLObjectElementGetHspace           ,
+
+
+-- ** dOMHTMLObjectElementGetName
+    dOMHTMLObjectElementGetName             ,
+
+
+-- ** dOMHTMLObjectElementGetStandby
+    dOMHTMLObjectElementGetStandby          ,
+
+
+-- ** dOMHTMLObjectElementGetTypeAttr
+    dOMHTMLObjectElementGetTypeAttr         ,
+
+
+-- ** dOMHTMLObjectElementGetUseMap
+    dOMHTMLObjectElementGetUseMap           ,
+
+
+-- ** dOMHTMLObjectElementGetVspace
+    dOMHTMLObjectElementGetVspace           ,
+
+
+-- ** dOMHTMLObjectElementGetWidth
+    dOMHTMLObjectElementGetWidth            ,
+
+
+-- ** dOMHTMLObjectElementSetAlign
+    dOMHTMLObjectElementSetAlign            ,
+
+
+-- ** dOMHTMLObjectElementSetArchive
+    dOMHTMLObjectElementSetArchive          ,
+
+
+-- ** dOMHTMLObjectElementSetBorder
+    dOMHTMLObjectElementSetBorder           ,
+
+
+-- ** dOMHTMLObjectElementSetCode
+    dOMHTMLObjectElementSetCode             ,
+
+
+-- ** dOMHTMLObjectElementSetCodeBase
+    dOMHTMLObjectElementSetCodeBase         ,
+
+
+-- ** dOMHTMLObjectElementSetCodeType
+    dOMHTMLObjectElementSetCodeType         ,
+
+
+-- ** dOMHTMLObjectElementSetData
+    dOMHTMLObjectElementSetData             ,
+
+
+-- ** dOMHTMLObjectElementSetDeclare
+    dOMHTMLObjectElementSetDeclare          ,
+
+
+-- ** dOMHTMLObjectElementSetHeight
+    dOMHTMLObjectElementSetHeight           ,
+
+
+-- ** dOMHTMLObjectElementSetHspace
+    dOMHTMLObjectElementSetHspace           ,
+
+
+-- ** dOMHTMLObjectElementSetName
+    dOMHTMLObjectElementSetName             ,
+
+
+-- ** dOMHTMLObjectElementSetStandby
+    dOMHTMLObjectElementSetStandby          ,
+
+
+-- ** dOMHTMLObjectElementSetTypeAttr
+    dOMHTMLObjectElementSetTypeAttr         ,
+
+
+-- ** dOMHTMLObjectElementSetUseMap
+    dOMHTMLObjectElementSetUseMap           ,
+
+
+-- ** dOMHTMLObjectElementSetVspace
+    dOMHTMLObjectElementSetVspace           ,
+
+
+-- ** dOMHTMLObjectElementSetWidth
+    dOMHTMLObjectElementSetWidth            ,
+
+
+
+
+ -- * Properties
+-- ** Align
+    DOMHTMLObjectElementAlignPropertyInfo   ,
+    constructDOMHTMLObjectElementAlign      ,
+    getDOMHTMLObjectElementAlign            ,
+    setDOMHTMLObjectElementAlign            ,
+
+
+-- ** Archive
+    DOMHTMLObjectElementArchivePropertyInfo ,
+    constructDOMHTMLObjectElementArchive    ,
+    getDOMHTMLObjectElementArchive          ,
+    setDOMHTMLObjectElementArchive          ,
+
+
+-- ** Border
+    DOMHTMLObjectElementBorderPropertyInfo  ,
+    constructDOMHTMLObjectElementBorder     ,
+    getDOMHTMLObjectElementBorder           ,
+    setDOMHTMLObjectElementBorder           ,
+
+
+-- ** Code
+    DOMHTMLObjectElementCodePropertyInfo    ,
+    constructDOMHTMLObjectElementCode       ,
+    getDOMHTMLObjectElementCode             ,
+    setDOMHTMLObjectElementCode             ,
+
+
+-- ** CodeBase
+    DOMHTMLObjectElementCodeBasePropertyInfo,
+    constructDOMHTMLObjectElementCodeBase   ,
+    getDOMHTMLObjectElementCodeBase         ,
+    setDOMHTMLObjectElementCodeBase         ,
+
+
+-- ** CodeType
+    DOMHTMLObjectElementCodeTypePropertyInfo,
+    constructDOMHTMLObjectElementCodeType   ,
+    getDOMHTMLObjectElementCodeType         ,
+    setDOMHTMLObjectElementCodeType         ,
+
+
+-- ** ContentDocument
+    DOMHTMLObjectElementContentDocumentPropertyInfo,
+    getDOMHTMLObjectElementContentDocument  ,
+
+
+-- ** Data
+    DOMHTMLObjectElementDataPropertyInfo    ,
+    constructDOMHTMLObjectElementData       ,
+    getDOMHTMLObjectElementData             ,
+    setDOMHTMLObjectElementData             ,
+
+
+-- ** Declare
+    DOMHTMLObjectElementDeclarePropertyInfo ,
+    constructDOMHTMLObjectElementDeclare    ,
+    getDOMHTMLObjectElementDeclare          ,
+    setDOMHTMLObjectElementDeclare          ,
+
+
+-- ** Form
+    DOMHTMLObjectElementFormPropertyInfo    ,
+    getDOMHTMLObjectElementForm             ,
+
+
+-- ** Height
+    DOMHTMLObjectElementHeightPropertyInfo  ,
+    constructDOMHTMLObjectElementHeight     ,
+    getDOMHTMLObjectElementHeight           ,
+    setDOMHTMLObjectElementHeight           ,
+
+
+-- ** Hspace
+    DOMHTMLObjectElementHspacePropertyInfo  ,
+    constructDOMHTMLObjectElementHspace     ,
+    getDOMHTMLObjectElementHspace           ,
+    setDOMHTMLObjectElementHspace           ,
+
+
+-- ** Name
+    DOMHTMLObjectElementNamePropertyInfo    ,
+    constructDOMHTMLObjectElementName       ,
+    getDOMHTMLObjectElementName             ,
+    setDOMHTMLObjectElementName             ,
+
+
+-- ** Standby
+    DOMHTMLObjectElementStandbyPropertyInfo ,
+    constructDOMHTMLObjectElementStandby    ,
+    getDOMHTMLObjectElementStandby          ,
+    setDOMHTMLObjectElementStandby          ,
+
+
+-- ** Type
+    DOMHTMLObjectElementTypePropertyInfo    ,
+    constructDOMHTMLObjectElementType       ,
+    getDOMHTMLObjectElementType             ,
+    setDOMHTMLObjectElementType             ,
+
+
+-- ** UseMap
+    DOMHTMLObjectElementUseMapPropertyInfo  ,
+    constructDOMHTMLObjectElementUseMap     ,
+    getDOMHTMLObjectElementUseMap           ,
+    setDOMHTMLObjectElementUseMap           ,
+
+
+-- ** ValidationMessage
+    DOMHTMLObjectElementValidationMessagePropertyInfo,
+    getDOMHTMLObjectElementValidationMessage,
+
+
+-- ** Vspace
+    DOMHTMLObjectElementVspacePropertyInfo  ,
+    constructDOMHTMLObjectElementVspace     ,
+    getDOMHTMLObjectElementVspace           ,
+    setDOMHTMLObjectElementVspace           ,
+
+
+-- ** Width
+    DOMHTMLObjectElementWidthPropertyInfo   ,
+    constructDOMHTMLObjectElementWidth      ,
+    getDOMHTMLObjectElementWidth            ,
+    setDOMHTMLObjectElementWidth            ,
+
+
+-- ** WillValidate
+    DOMHTMLObjectElementWillValidatePropertyInfo,
+    getDOMHTMLObjectElementWillValidate     ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLObjectElement = DOMHTMLObjectElement (ForeignPtr DOMHTMLObjectElement)
+foreign import ccall "webkit_dom_html_object_element_get_type"
+    c_webkit_dom_html_object_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLObjectElement = DOMHTMLObjectElementParentTypes
+type DOMHTMLObjectElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLObjectElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_object_element_get_type
+    
+
+class GObject o => DOMHTMLObjectElementK o
+instance (GObject o, IsDescendantOf DOMHTMLObjectElement o) => DOMHTMLObjectElementK o
+
+toDOMHTMLObjectElement :: DOMHTMLObjectElementK o => o -> IO DOMHTMLObjectElement
+toDOMHTMLObjectElement = unsafeCastTo DOMHTMLObjectElement
+
+noDOMHTMLObjectElement :: Maybe DOMHTMLObjectElement
+noDOMHTMLObjectElement = Nothing
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementAlign :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m T.Text
+getDOMHTMLObjectElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLObjectElementAlign :: (MonadIO m, DOMHTMLObjectElementK o) => o -> T.Text -> m ()
+setDOMHTMLObjectElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLObjectElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLObjectElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLObjectElementAlignPropertyInfo
+instance AttrInfo DOMHTMLObjectElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLObjectElementAlignPropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLObjectElementAlignPropertyInfo = "DOMHTMLObjectElement::align"
+    attrGet _ = getDOMHTMLObjectElementAlign
+    attrSet _ = setDOMHTMLObjectElementAlign
+    attrConstruct _ = constructDOMHTMLObjectElementAlign
+
+-- VVV Prop "archive"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementArchive :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m T.Text
+getDOMHTMLObjectElementArchive obj = liftIO $ getObjectPropertyString obj "archive"
+
+setDOMHTMLObjectElementArchive :: (MonadIO m, DOMHTMLObjectElementK o) => o -> T.Text -> m ()
+setDOMHTMLObjectElementArchive obj val = liftIO $ setObjectPropertyString obj "archive" val
+
+constructDOMHTMLObjectElementArchive :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLObjectElementArchive val = constructObjectPropertyString "archive" val
+
+data DOMHTMLObjectElementArchivePropertyInfo
+instance AttrInfo DOMHTMLObjectElementArchivePropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementArchivePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementArchivePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLObjectElementArchivePropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementArchivePropertyInfo = T.Text
+    type AttrLabel DOMHTMLObjectElementArchivePropertyInfo = "DOMHTMLObjectElement::archive"
+    attrGet _ = getDOMHTMLObjectElementArchive
+    attrSet _ = setDOMHTMLObjectElementArchive
+    attrConstruct _ = constructDOMHTMLObjectElementArchive
+
+-- VVV Prop "border"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementBorder :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m T.Text
+getDOMHTMLObjectElementBorder obj = liftIO $ getObjectPropertyString obj "border"
+
+setDOMHTMLObjectElementBorder :: (MonadIO m, DOMHTMLObjectElementK o) => o -> T.Text -> m ()
+setDOMHTMLObjectElementBorder obj val = liftIO $ setObjectPropertyString obj "border" val
+
+constructDOMHTMLObjectElementBorder :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLObjectElementBorder val = constructObjectPropertyString "border" val
+
+data DOMHTMLObjectElementBorderPropertyInfo
+instance AttrInfo DOMHTMLObjectElementBorderPropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementBorderPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementBorderPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLObjectElementBorderPropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementBorderPropertyInfo = T.Text
+    type AttrLabel DOMHTMLObjectElementBorderPropertyInfo = "DOMHTMLObjectElement::border"
+    attrGet _ = getDOMHTMLObjectElementBorder
+    attrSet _ = setDOMHTMLObjectElementBorder
+    attrConstruct _ = constructDOMHTMLObjectElementBorder
+
+-- VVV Prop "code"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementCode :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m T.Text
+getDOMHTMLObjectElementCode obj = liftIO $ getObjectPropertyString obj "code"
+
+setDOMHTMLObjectElementCode :: (MonadIO m, DOMHTMLObjectElementK o) => o -> T.Text -> m ()
+setDOMHTMLObjectElementCode obj val = liftIO $ setObjectPropertyString obj "code" val
+
+constructDOMHTMLObjectElementCode :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLObjectElementCode val = constructObjectPropertyString "code" val
+
+data DOMHTMLObjectElementCodePropertyInfo
+instance AttrInfo DOMHTMLObjectElementCodePropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementCodePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementCodePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLObjectElementCodePropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementCodePropertyInfo = T.Text
+    type AttrLabel DOMHTMLObjectElementCodePropertyInfo = "DOMHTMLObjectElement::code"
+    attrGet _ = getDOMHTMLObjectElementCode
+    attrSet _ = setDOMHTMLObjectElementCode
+    attrConstruct _ = constructDOMHTMLObjectElementCode
+
+-- VVV Prop "code-base"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementCodeBase :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m T.Text
+getDOMHTMLObjectElementCodeBase obj = liftIO $ getObjectPropertyString obj "code-base"
+
+setDOMHTMLObjectElementCodeBase :: (MonadIO m, DOMHTMLObjectElementK o) => o -> T.Text -> m ()
+setDOMHTMLObjectElementCodeBase obj val = liftIO $ setObjectPropertyString obj "code-base" val
+
+constructDOMHTMLObjectElementCodeBase :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLObjectElementCodeBase val = constructObjectPropertyString "code-base" val
+
+data DOMHTMLObjectElementCodeBasePropertyInfo
+instance AttrInfo DOMHTMLObjectElementCodeBasePropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementCodeBasePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementCodeBasePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLObjectElementCodeBasePropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementCodeBasePropertyInfo = T.Text
+    type AttrLabel DOMHTMLObjectElementCodeBasePropertyInfo = "DOMHTMLObjectElement::code-base"
+    attrGet _ = getDOMHTMLObjectElementCodeBase
+    attrSet _ = setDOMHTMLObjectElementCodeBase
+    attrConstruct _ = constructDOMHTMLObjectElementCodeBase
+
+-- VVV Prop "code-type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementCodeType :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m T.Text
+getDOMHTMLObjectElementCodeType obj = liftIO $ getObjectPropertyString obj "code-type"
+
+setDOMHTMLObjectElementCodeType :: (MonadIO m, DOMHTMLObjectElementK o) => o -> T.Text -> m ()
+setDOMHTMLObjectElementCodeType obj val = liftIO $ setObjectPropertyString obj "code-type" val
+
+constructDOMHTMLObjectElementCodeType :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLObjectElementCodeType val = constructObjectPropertyString "code-type" val
+
+data DOMHTMLObjectElementCodeTypePropertyInfo
+instance AttrInfo DOMHTMLObjectElementCodeTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementCodeTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementCodeTypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLObjectElementCodeTypePropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementCodeTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLObjectElementCodeTypePropertyInfo = "DOMHTMLObjectElement::code-type"
+    attrGet _ = getDOMHTMLObjectElementCodeType
+    attrSet _ = setDOMHTMLObjectElementCodeType
+    attrConstruct _ = constructDOMHTMLObjectElementCodeType
+
+-- VVV Prop "content-document"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDocument"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLObjectElementContentDocument :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m DOMDocument
+getDOMHTMLObjectElementContentDocument obj = liftIO $ getObjectPropertyObject obj "content-document" DOMDocument
+
+data DOMHTMLObjectElementContentDocumentPropertyInfo
+instance AttrInfo DOMHTMLObjectElementContentDocumentPropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementContentDocumentPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementContentDocumentPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLObjectElementContentDocumentPropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementContentDocumentPropertyInfo = DOMDocument
+    type AttrLabel DOMHTMLObjectElementContentDocumentPropertyInfo = "DOMHTMLObjectElement::content-document"
+    attrGet _ = getDOMHTMLObjectElementContentDocument
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "data"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementData :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m T.Text
+getDOMHTMLObjectElementData obj = liftIO $ getObjectPropertyString obj "data"
+
+setDOMHTMLObjectElementData :: (MonadIO m, DOMHTMLObjectElementK o) => o -> T.Text -> m ()
+setDOMHTMLObjectElementData obj val = liftIO $ setObjectPropertyString obj "data" val
+
+constructDOMHTMLObjectElementData :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLObjectElementData val = constructObjectPropertyString "data" val
+
+data DOMHTMLObjectElementDataPropertyInfo
+instance AttrInfo DOMHTMLObjectElementDataPropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementDataPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementDataPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLObjectElementDataPropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementDataPropertyInfo = T.Text
+    type AttrLabel DOMHTMLObjectElementDataPropertyInfo = "DOMHTMLObjectElement::data"
+    attrGet _ = getDOMHTMLObjectElementData
+    attrSet _ = setDOMHTMLObjectElementData
+    attrConstruct _ = constructDOMHTMLObjectElementData
+
+-- VVV Prop "declare"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementDeclare :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m Bool
+getDOMHTMLObjectElementDeclare obj = liftIO $ getObjectPropertyBool obj "declare"
+
+setDOMHTMLObjectElementDeclare :: (MonadIO m, DOMHTMLObjectElementK o) => o -> Bool -> m ()
+setDOMHTMLObjectElementDeclare obj val = liftIO $ setObjectPropertyBool obj "declare" val
+
+constructDOMHTMLObjectElementDeclare :: Bool -> IO ([Char], GValue)
+constructDOMHTMLObjectElementDeclare val = constructObjectPropertyBool "declare" val
+
+data DOMHTMLObjectElementDeclarePropertyInfo
+instance AttrInfo DOMHTMLObjectElementDeclarePropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementDeclarePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementDeclarePropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLObjectElementDeclarePropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementDeclarePropertyInfo = Bool
+    type AttrLabel DOMHTMLObjectElementDeclarePropertyInfo = "DOMHTMLObjectElement::declare"
+    attrGet _ = getDOMHTMLObjectElementDeclare
+    attrSet _ = setDOMHTMLObjectElementDeclare
+    attrConstruct _ = constructDOMHTMLObjectElementDeclare
+
+-- VVV Prop "form"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLObjectElementForm :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m DOMHTMLFormElement
+getDOMHTMLObjectElementForm obj = liftIO $ getObjectPropertyObject obj "form" DOMHTMLFormElement
+
+data DOMHTMLObjectElementFormPropertyInfo
+instance AttrInfo DOMHTMLObjectElementFormPropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementFormPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementFormPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLObjectElementFormPropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementFormPropertyInfo = DOMHTMLFormElement
+    type AttrLabel DOMHTMLObjectElementFormPropertyInfo = "DOMHTMLObjectElement::form"
+    attrGet _ = getDOMHTMLObjectElementForm
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "height"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementHeight :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m T.Text
+getDOMHTMLObjectElementHeight obj = liftIO $ getObjectPropertyString obj "height"
+
+setDOMHTMLObjectElementHeight :: (MonadIO m, DOMHTMLObjectElementK o) => o -> T.Text -> m ()
+setDOMHTMLObjectElementHeight obj val = liftIO $ setObjectPropertyString obj "height" val
+
+constructDOMHTMLObjectElementHeight :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLObjectElementHeight val = constructObjectPropertyString "height" val
+
+data DOMHTMLObjectElementHeightPropertyInfo
+instance AttrInfo DOMHTMLObjectElementHeightPropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementHeightPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementHeightPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLObjectElementHeightPropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementHeightPropertyInfo = T.Text
+    type AttrLabel DOMHTMLObjectElementHeightPropertyInfo = "DOMHTMLObjectElement::height"
+    attrGet _ = getDOMHTMLObjectElementHeight
+    attrSet _ = setDOMHTMLObjectElementHeight
+    attrConstruct _ = constructDOMHTMLObjectElementHeight
+
+-- VVV Prop "hspace"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementHspace :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m Int64
+getDOMHTMLObjectElementHspace obj = liftIO $ getObjectPropertyInt64 obj "hspace"
+
+setDOMHTMLObjectElementHspace :: (MonadIO m, DOMHTMLObjectElementK o) => o -> Int64 -> m ()
+setDOMHTMLObjectElementHspace obj val = liftIO $ setObjectPropertyInt64 obj "hspace" val
+
+constructDOMHTMLObjectElementHspace :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLObjectElementHspace val = constructObjectPropertyInt64 "hspace" val
+
+data DOMHTMLObjectElementHspacePropertyInfo
+instance AttrInfo DOMHTMLObjectElementHspacePropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementHspacePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementHspacePropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLObjectElementHspacePropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementHspacePropertyInfo = Int64
+    type AttrLabel DOMHTMLObjectElementHspacePropertyInfo = "DOMHTMLObjectElement::hspace"
+    attrGet _ = getDOMHTMLObjectElementHspace
+    attrSet _ = setDOMHTMLObjectElementHspace
+    attrConstruct _ = constructDOMHTMLObjectElementHspace
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementName :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m T.Text
+getDOMHTMLObjectElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLObjectElementName :: (MonadIO m, DOMHTMLObjectElementK o) => o -> T.Text -> m ()
+setDOMHTMLObjectElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLObjectElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLObjectElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLObjectElementNamePropertyInfo
+instance AttrInfo DOMHTMLObjectElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLObjectElementNamePropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLObjectElementNamePropertyInfo = "DOMHTMLObjectElement::name"
+    attrGet _ = getDOMHTMLObjectElementName
+    attrSet _ = setDOMHTMLObjectElementName
+    attrConstruct _ = constructDOMHTMLObjectElementName
+
+-- VVV Prop "standby"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementStandby :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m T.Text
+getDOMHTMLObjectElementStandby obj = liftIO $ getObjectPropertyString obj "standby"
+
+setDOMHTMLObjectElementStandby :: (MonadIO m, DOMHTMLObjectElementK o) => o -> T.Text -> m ()
+setDOMHTMLObjectElementStandby obj val = liftIO $ setObjectPropertyString obj "standby" val
+
+constructDOMHTMLObjectElementStandby :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLObjectElementStandby val = constructObjectPropertyString "standby" val
+
+data DOMHTMLObjectElementStandbyPropertyInfo
+instance AttrInfo DOMHTMLObjectElementStandbyPropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementStandbyPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementStandbyPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLObjectElementStandbyPropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementStandbyPropertyInfo = T.Text
+    type AttrLabel DOMHTMLObjectElementStandbyPropertyInfo = "DOMHTMLObjectElement::standby"
+    attrGet _ = getDOMHTMLObjectElementStandby
+    attrSet _ = setDOMHTMLObjectElementStandby
+    attrConstruct _ = constructDOMHTMLObjectElementStandby
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementType :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m T.Text
+getDOMHTMLObjectElementType obj = liftIO $ getObjectPropertyString obj "type"
+
+setDOMHTMLObjectElementType :: (MonadIO m, DOMHTMLObjectElementK o) => o -> T.Text -> m ()
+setDOMHTMLObjectElementType obj val = liftIO $ setObjectPropertyString obj "type" val
+
+constructDOMHTMLObjectElementType :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLObjectElementType val = constructObjectPropertyString "type" val
+
+data DOMHTMLObjectElementTypePropertyInfo
+instance AttrInfo DOMHTMLObjectElementTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementTypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLObjectElementTypePropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLObjectElementTypePropertyInfo = "DOMHTMLObjectElement::type"
+    attrGet _ = getDOMHTMLObjectElementType
+    attrSet _ = setDOMHTMLObjectElementType
+    attrConstruct _ = constructDOMHTMLObjectElementType
+
+-- VVV Prop "use-map"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementUseMap :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m T.Text
+getDOMHTMLObjectElementUseMap obj = liftIO $ getObjectPropertyString obj "use-map"
+
+setDOMHTMLObjectElementUseMap :: (MonadIO m, DOMHTMLObjectElementK o) => o -> T.Text -> m ()
+setDOMHTMLObjectElementUseMap obj val = liftIO $ setObjectPropertyString obj "use-map" val
+
+constructDOMHTMLObjectElementUseMap :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLObjectElementUseMap val = constructObjectPropertyString "use-map" val
+
+data DOMHTMLObjectElementUseMapPropertyInfo
+instance AttrInfo DOMHTMLObjectElementUseMapPropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementUseMapPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementUseMapPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLObjectElementUseMapPropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementUseMapPropertyInfo = T.Text
+    type AttrLabel DOMHTMLObjectElementUseMapPropertyInfo = "DOMHTMLObjectElement::use-map"
+    attrGet _ = getDOMHTMLObjectElementUseMap
+    attrSet _ = setDOMHTMLObjectElementUseMap
+    attrConstruct _ = constructDOMHTMLObjectElementUseMap
+
+-- VVV Prop "validation-message"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLObjectElementValidationMessage :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m T.Text
+getDOMHTMLObjectElementValidationMessage obj = liftIO $ getObjectPropertyString obj "validation-message"
+
+data DOMHTMLObjectElementValidationMessagePropertyInfo
+instance AttrInfo DOMHTMLObjectElementValidationMessagePropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementValidationMessagePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementValidationMessagePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLObjectElementValidationMessagePropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementValidationMessagePropertyInfo = T.Text
+    type AttrLabel DOMHTMLObjectElementValidationMessagePropertyInfo = "DOMHTMLObjectElement::validation-message"
+    attrGet _ = getDOMHTMLObjectElementValidationMessage
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "vspace"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementVspace :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m Int64
+getDOMHTMLObjectElementVspace obj = liftIO $ getObjectPropertyInt64 obj "vspace"
+
+setDOMHTMLObjectElementVspace :: (MonadIO m, DOMHTMLObjectElementK o) => o -> Int64 -> m ()
+setDOMHTMLObjectElementVspace obj val = liftIO $ setObjectPropertyInt64 obj "vspace" val
+
+constructDOMHTMLObjectElementVspace :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLObjectElementVspace val = constructObjectPropertyInt64 "vspace" val
+
+data DOMHTMLObjectElementVspacePropertyInfo
+instance AttrInfo DOMHTMLObjectElementVspacePropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementVspacePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementVspacePropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLObjectElementVspacePropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementVspacePropertyInfo = Int64
+    type AttrLabel DOMHTMLObjectElementVspacePropertyInfo = "DOMHTMLObjectElement::vspace"
+    attrGet _ = getDOMHTMLObjectElementVspace
+    attrSet _ = setDOMHTMLObjectElementVspace
+    attrConstruct _ = constructDOMHTMLObjectElementVspace
+
+-- VVV Prop "width"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLObjectElementWidth :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m T.Text
+getDOMHTMLObjectElementWidth obj = liftIO $ getObjectPropertyString obj "width"
+
+setDOMHTMLObjectElementWidth :: (MonadIO m, DOMHTMLObjectElementK o) => o -> T.Text -> m ()
+setDOMHTMLObjectElementWidth obj val = liftIO $ setObjectPropertyString obj "width" val
+
+constructDOMHTMLObjectElementWidth :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLObjectElementWidth val = constructObjectPropertyString "width" val
+
+data DOMHTMLObjectElementWidthPropertyInfo
+instance AttrInfo DOMHTMLObjectElementWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementWidthPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLObjectElementWidthPropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementWidthPropertyInfo = T.Text
+    type AttrLabel DOMHTMLObjectElementWidthPropertyInfo = "DOMHTMLObjectElement::width"
+    attrGet _ = getDOMHTMLObjectElementWidth
+    attrSet _ = setDOMHTMLObjectElementWidth
+    attrConstruct _ = constructDOMHTMLObjectElementWidth
+
+-- VVV Prop "will-validate"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLObjectElementWillValidate :: (MonadIO m, DOMHTMLObjectElementK o) => o -> m Bool
+getDOMHTMLObjectElementWillValidate obj = liftIO $ getObjectPropertyBool obj "will-validate"
+
+data DOMHTMLObjectElementWillValidatePropertyInfo
+instance AttrInfo DOMHTMLObjectElementWillValidatePropertyInfo where
+    type AttrAllowedOps DOMHTMLObjectElementWillValidatePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLObjectElementWillValidatePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLObjectElementWillValidatePropertyInfo = DOMHTMLObjectElementK
+    type AttrGetType DOMHTMLObjectElementWillValidatePropertyInfo = Bool
+    type AttrLabel DOMHTMLObjectElementWillValidatePropertyInfo = "DOMHTMLObjectElement::will-validate"
+    attrGet _ = getDOMHTMLObjectElementWillValidate
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMHTMLObjectElement = DOMHTMLObjectElementAttributeList
+type DOMHTMLObjectElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLObjectElementAlignPropertyInfo), '("archive", DOMHTMLObjectElementArchivePropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("border", DOMHTMLObjectElementBorderPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("code", DOMHTMLObjectElementCodePropertyInfo), '("code-base", DOMHTMLObjectElementCodeBasePropertyInfo), '("code-type", DOMHTMLObjectElementCodeTypePropertyInfo), '("content-document", DOMHTMLObjectElementContentDocumentPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("data", DOMHTMLObjectElementDataPropertyInfo), '("declare", DOMHTMLObjectElementDeclarePropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("form", DOMHTMLObjectElementFormPropertyInfo), '("height", DOMHTMLObjectElementHeightPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("hspace", DOMHTMLObjectElementHspacePropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("name", DOMHTMLObjectElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("standby", DOMHTMLObjectElementStandbyPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLObjectElementTypePropertyInfo), '("use-map", DOMHTMLObjectElementUseMapPropertyInfo), '("validation-message", DOMHTMLObjectElementValidationMessagePropertyInfo), '("vspace", DOMHTMLObjectElementVspacePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("width", DOMHTMLObjectElementWidthPropertyInfo), '("will-validate", DOMHTMLObjectElementWillValidatePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLObjectElement = DOMHTMLObjectElementSignalList
+type DOMHTMLObjectElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLObjectElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_align" webkit_dom_html_object_element_get_align :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO CString
+
+
+dOMHTMLObjectElementGetAlign ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLObjectElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_object_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::get_archive
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_archive" webkit_dom_html_object_element_get_archive :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO CString
+
+
+dOMHTMLObjectElementGetArchive ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLObjectElementGetArchive _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_archive _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_object_element_get_archive" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::get_border
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_border" webkit_dom_html_object_element_get_border :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO CString
+
+
+dOMHTMLObjectElementGetBorder ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLObjectElementGetBorder _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_border _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_object_element_get_border" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::get_code
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_code" webkit_dom_html_object_element_get_code :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO CString
+
+
+dOMHTMLObjectElementGetCode ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLObjectElementGetCode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_code _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_object_element_get_code" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::get_code_base
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_code_base" webkit_dom_html_object_element_get_code_base :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO CString
+
+
+dOMHTMLObjectElementGetCodeBase ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLObjectElementGetCodeBase _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_code_base _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_object_element_get_code_base" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::get_code_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_code_type" webkit_dom_html_object_element_get_code_type :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO CString
+
+
+dOMHTMLObjectElementGetCodeType ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLObjectElementGetCodeType _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_code_type _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_object_element_get_code_type" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::get_content_document
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDocument"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_content_document" webkit_dom_html_object_element_get_content_document :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO (Ptr DOMDocument)
+
+
+dOMHTMLObjectElementGetContentDocument ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m DOMDocument
+dOMHTMLObjectElementGetContentDocument _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_content_document _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_object_element_get_content_document" result
+    result' <- (newObject DOMDocument) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::get_data
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_data" webkit_dom_html_object_element_get_data :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO CString
+
+
+dOMHTMLObjectElementGetData ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLObjectElementGetData _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_data _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_object_element_get_data" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::get_declare
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_declare" webkit_dom_html_object_element_get_declare :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO CInt
+
+
+dOMHTMLObjectElementGetDeclare ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLObjectElementGetDeclare _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_declare _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::get_form
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_form" webkit_dom_html_object_element_get_form :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO (Ptr DOMHTMLFormElement)
+
+
+dOMHTMLObjectElementGetForm ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLFormElement
+dOMHTMLObjectElementGetForm _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_form _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_object_element_get_form" result
+    result' <- (newObject DOMHTMLFormElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::get_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_height" webkit_dom_html_object_element_get_height :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO CString
+
+
+dOMHTMLObjectElementGetHeight ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLObjectElementGetHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_height _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_object_element_get_height" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::get_hspace
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_hspace" webkit_dom_html_object_element_get_hspace :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO Int64
+
+
+dOMHTMLObjectElementGetHspace ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLObjectElementGetHspace _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_hspace _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLObjectElement::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_name" webkit_dom_html_object_element_get_name :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO CString
+
+
+dOMHTMLObjectElementGetName ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLObjectElementGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_object_element_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::get_standby
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_standby" webkit_dom_html_object_element_get_standby :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO CString
+
+
+dOMHTMLObjectElementGetStandby ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLObjectElementGetStandby _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_standby _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_object_element_get_standby" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::get_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_type_attr" webkit_dom_html_object_element_get_type_attr :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO CString
+
+
+dOMHTMLObjectElementGetTypeAttr ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLObjectElementGetTypeAttr _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_type_attr _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_object_element_get_type_attr" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::get_use_map
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_use_map" webkit_dom_html_object_element_get_use_map :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO CString
+
+
+dOMHTMLObjectElementGetUseMap ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLObjectElementGetUseMap _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_use_map _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_object_element_get_use_map" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::get_vspace
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_vspace" webkit_dom_html_object_element_get_vspace :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO Int64
+
+
+dOMHTMLObjectElementGetVspace ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLObjectElementGetVspace _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_vspace _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLObjectElement::get_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_get_width" webkit_dom_html_object_element_get_width :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    IO CString
+
+
+dOMHTMLObjectElementGetWidth ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLObjectElementGetWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_object_element_get_width _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_object_element_get_width" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLObjectElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_align" webkit_dom_html_object_element_set_align :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLObjectElementSetAlign ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLObjectElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_object_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLObjectElement::set_archive
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_archive" webkit_dom_html_object_element_set_archive :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLObjectElementSetArchive ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLObjectElementSetArchive _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_object_element_set_archive _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLObjectElement::set_border
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_border" webkit_dom_html_object_element_set_border :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLObjectElementSetBorder ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLObjectElementSetBorder _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_object_element_set_border _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLObjectElement::set_code
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_code" webkit_dom_html_object_element_set_code :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLObjectElementSetCode ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLObjectElementSetCode _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_object_element_set_code _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLObjectElement::set_code_base
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_code_base" webkit_dom_html_object_element_set_code_base :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLObjectElementSetCodeBase ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLObjectElementSetCodeBase _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_object_element_set_code_base _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLObjectElement::set_code_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_code_type" webkit_dom_html_object_element_set_code_type :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLObjectElementSetCodeType ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLObjectElementSetCodeType _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_object_element_set_code_type _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLObjectElement::set_data
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_data" webkit_dom_html_object_element_set_data :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLObjectElementSetData ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLObjectElementSetData _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_object_element_set_data _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLObjectElement::set_declare
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_declare" webkit_dom_html_object_element_set_declare :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLObjectElementSetDeclare ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLObjectElementSetDeclare _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_object_element_set_declare _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLObjectElement::set_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_height" webkit_dom_html_object_element_set_height :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLObjectElementSetHeight ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLObjectElementSetHeight _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_object_element_set_height _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLObjectElement::set_hspace
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_hspace" webkit_dom_html_object_element_set_hspace :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLObjectElementSetHspace ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLObjectElementSetHspace _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_object_element_set_hspace _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLObjectElement::set_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_name" webkit_dom_html_object_element_set_name :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLObjectElementSetName ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLObjectElementSetName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_object_element_set_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLObjectElement::set_standby
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_standby" webkit_dom_html_object_element_set_standby :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLObjectElementSetStandby ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLObjectElementSetStandby _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_object_element_set_standby _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLObjectElement::set_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_type_attr" webkit_dom_html_object_element_set_type_attr :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLObjectElementSetTypeAttr ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLObjectElementSetTypeAttr _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_object_element_set_type_attr _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLObjectElement::set_use_map
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_use_map" webkit_dom_html_object_element_set_use_map :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLObjectElementSetUseMap ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLObjectElementSetUseMap _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_object_element_set_use_map _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLObjectElement::set_vspace
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_vspace" webkit_dom_html_object_element_set_vspace :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLObjectElementSetVspace ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLObjectElementSetVspace _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_object_element_set_vspace _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLObjectElement::set_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLObjectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_object_element_set_width" webkit_dom_html_object_element_set_width :: 
+    Ptr DOMHTMLObjectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLObjectElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLObjectElementSetWidth ::
+    (MonadIO m, DOMHTMLObjectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLObjectElementSetWidth _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_object_element_set_width _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLObjectElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLObjectElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLObjectElement.hs-boot
@@ -0,0 +1,33 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLObjectElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLObjectElement = DOMHTMLObjectElement (ForeignPtr DOMHTMLObjectElement)
+instance GObject DOMHTMLObjectElement where
+class GObject o => DOMHTMLObjectElementK o
+instance (GObject o, IsDescendantOf DOMHTMLObjectElement o) => DOMHTMLObjectElementK o
+data DOMHTMLObjectElementAlignPropertyInfo
+data DOMHTMLObjectElementArchivePropertyInfo
+data DOMHTMLObjectElementBorderPropertyInfo
+data DOMHTMLObjectElementCodePropertyInfo
+data DOMHTMLObjectElementCodeBasePropertyInfo
+data DOMHTMLObjectElementCodeTypePropertyInfo
+data DOMHTMLObjectElementContentDocumentPropertyInfo
+data DOMHTMLObjectElementDataPropertyInfo
+data DOMHTMLObjectElementDeclarePropertyInfo
+data DOMHTMLObjectElementFormPropertyInfo
+data DOMHTMLObjectElementHeightPropertyInfo
+data DOMHTMLObjectElementHspacePropertyInfo
+data DOMHTMLObjectElementNamePropertyInfo
+data DOMHTMLObjectElementStandbyPropertyInfo
+data DOMHTMLObjectElementTypePropertyInfo
+data DOMHTMLObjectElementUseMapPropertyInfo
+data DOMHTMLObjectElementValidationMessagePropertyInfo
+data DOMHTMLObjectElementVspacePropertyInfo
+data DOMHTMLObjectElementWidthPropertyInfo
+data DOMHTMLObjectElementWillValidatePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLOptGroupElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLOptGroupElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLOptGroupElement.hs
@@ -0,0 +1,249 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLOptGroupElement
+    ( 
+
+-- * Exported types
+    DOMHTMLOptGroupElement(..)              ,
+    DOMHTMLOptGroupElementK                 ,
+    toDOMHTMLOptGroupElement                ,
+    noDOMHTMLOptGroupElement                ,
+
+
+ -- * Methods
+-- ** dOMHTMLOptGroupElementGetDisabled
+    dOMHTMLOptGroupElementGetDisabled       ,
+
+
+-- ** dOMHTMLOptGroupElementGetLabel
+    dOMHTMLOptGroupElementGetLabel          ,
+
+
+-- ** dOMHTMLOptGroupElementSetDisabled
+    dOMHTMLOptGroupElementSetDisabled       ,
+
+
+-- ** dOMHTMLOptGroupElementSetLabel
+    dOMHTMLOptGroupElementSetLabel          ,
+
+
+
+
+ -- * Properties
+-- ** Disabled
+    DOMHTMLOptGroupElementDisabledPropertyInfo,
+    constructDOMHTMLOptGroupElementDisabled ,
+    getDOMHTMLOptGroupElementDisabled       ,
+    setDOMHTMLOptGroupElementDisabled       ,
+
+
+-- ** Label
+    DOMHTMLOptGroupElementLabelPropertyInfo ,
+    constructDOMHTMLOptGroupElementLabel    ,
+    getDOMHTMLOptGroupElementLabel          ,
+    setDOMHTMLOptGroupElementLabel          ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLOptGroupElement = DOMHTMLOptGroupElement (ForeignPtr DOMHTMLOptGroupElement)
+foreign import ccall "webkit_dom_html_opt_group_element_get_type"
+    c_webkit_dom_html_opt_group_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLOptGroupElement = DOMHTMLOptGroupElementParentTypes
+type DOMHTMLOptGroupElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLOptGroupElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_opt_group_element_get_type
+    
+
+class GObject o => DOMHTMLOptGroupElementK o
+instance (GObject o, IsDescendantOf DOMHTMLOptGroupElement o) => DOMHTMLOptGroupElementK o
+
+toDOMHTMLOptGroupElement :: DOMHTMLOptGroupElementK o => o -> IO DOMHTMLOptGroupElement
+toDOMHTMLOptGroupElement = unsafeCastTo DOMHTMLOptGroupElement
+
+noDOMHTMLOptGroupElement :: Maybe DOMHTMLOptGroupElement
+noDOMHTMLOptGroupElement = Nothing
+
+-- VVV Prop "disabled"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLOptGroupElementDisabled :: (MonadIO m, DOMHTMLOptGroupElementK o) => o -> m Bool
+getDOMHTMLOptGroupElementDisabled obj = liftIO $ getObjectPropertyBool obj "disabled"
+
+setDOMHTMLOptGroupElementDisabled :: (MonadIO m, DOMHTMLOptGroupElementK o) => o -> Bool -> m ()
+setDOMHTMLOptGroupElementDisabled obj val = liftIO $ setObjectPropertyBool obj "disabled" val
+
+constructDOMHTMLOptGroupElementDisabled :: Bool -> IO ([Char], GValue)
+constructDOMHTMLOptGroupElementDisabled val = constructObjectPropertyBool "disabled" val
+
+data DOMHTMLOptGroupElementDisabledPropertyInfo
+instance AttrInfo DOMHTMLOptGroupElementDisabledPropertyInfo where
+    type AttrAllowedOps DOMHTMLOptGroupElementDisabledPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOptGroupElementDisabledPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLOptGroupElementDisabledPropertyInfo = DOMHTMLOptGroupElementK
+    type AttrGetType DOMHTMLOptGroupElementDisabledPropertyInfo = Bool
+    type AttrLabel DOMHTMLOptGroupElementDisabledPropertyInfo = "DOMHTMLOptGroupElement::disabled"
+    attrGet _ = getDOMHTMLOptGroupElementDisabled
+    attrSet _ = setDOMHTMLOptGroupElementDisabled
+    attrConstruct _ = constructDOMHTMLOptGroupElementDisabled
+
+-- VVV Prop "label"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLOptGroupElementLabel :: (MonadIO m, DOMHTMLOptGroupElementK o) => o -> m T.Text
+getDOMHTMLOptGroupElementLabel obj = liftIO $ getObjectPropertyString obj "label"
+
+setDOMHTMLOptGroupElementLabel :: (MonadIO m, DOMHTMLOptGroupElementK o) => o -> T.Text -> m ()
+setDOMHTMLOptGroupElementLabel obj val = liftIO $ setObjectPropertyString obj "label" val
+
+constructDOMHTMLOptGroupElementLabel :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLOptGroupElementLabel val = constructObjectPropertyString "label" val
+
+data DOMHTMLOptGroupElementLabelPropertyInfo
+instance AttrInfo DOMHTMLOptGroupElementLabelPropertyInfo where
+    type AttrAllowedOps DOMHTMLOptGroupElementLabelPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOptGroupElementLabelPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLOptGroupElementLabelPropertyInfo = DOMHTMLOptGroupElementK
+    type AttrGetType DOMHTMLOptGroupElementLabelPropertyInfo = T.Text
+    type AttrLabel DOMHTMLOptGroupElementLabelPropertyInfo = "DOMHTMLOptGroupElement::label"
+    attrGet _ = getDOMHTMLOptGroupElementLabel
+    attrSet _ = setDOMHTMLOptGroupElementLabel
+    attrConstruct _ = constructDOMHTMLOptGroupElementLabel
+
+type instance AttributeList DOMHTMLOptGroupElement = DOMHTMLOptGroupElementAttributeList
+type DOMHTMLOptGroupElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("disabled", DOMHTMLOptGroupElementDisabledPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("label", DOMHTMLOptGroupElementLabelPropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLOptGroupElement = DOMHTMLOptGroupElementSignalList
+type DOMHTMLOptGroupElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLOptGroupElement::get_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptGroupElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptGroupElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_opt_group_element_get_disabled" webkit_dom_html_opt_group_element_get_disabled :: 
+    Ptr DOMHTMLOptGroupElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptGroupElement"
+    IO CInt
+
+
+dOMHTMLOptGroupElementGetDisabled ::
+    (MonadIO m, DOMHTMLOptGroupElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLOptGroupElementGetDisabled _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_opt_group_element_get_disabled _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLOptGroupElement::get_label
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptGroupElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptGroupElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_opt_group_element_get_label" webkit_dom_html_opt_group_element_get_label :: 
+    Ptr DOMHTMLOptGroupElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptGroupElement"
+    IO CString
+
+
+dOMHTMLOptGroupElementGetLabel ::
+    (MonadIO m, DOMHTMLOptGroupElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLOptGroupElementGetLabel _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_opt_group_element_get_label _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_opt_group_element_get_label" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLOptGroupElement::set_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptGroupElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptGroupElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_opt_group_element_set_disabled" webkit_dom_html_opt_group_element_set_disabled :: 
+    Ptr DOMHTMLOptGroupElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptGroupElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLOptGroupElementSetDisabled ::
+    (MonadIO m, DOMHTMLOptGroupElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLOptGroupElementSetDisabled _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_opt_group_element_set_disabled _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLOptGroupElement::set_label
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptGroupElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptGroupElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_opt_group_element_set_label" webkit_dom_html_opt_group_element_set_label :: 
+    Ptr DOMHTMLOptGroupElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptGroupElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLOptGroupElementSetLabel ::
+    (MonadIO m, DOMHTMLOptGroupElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLOptGroupElementSetLabel _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_opt_group_element_set_label _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLOptGroupElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLOptGroupElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLOptGroupElement.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLOptGroupElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLOptGroupElement = DOMHTMLOptGroupElement (ForeignPtr DOMHTMLOptGroupElement)
+instance GObject DOMHTMLOptGroupElement where
+class GObject o => DOMHTMLOptGroupElementK o
+instance (GObject o, IsDescendantOf DOMHTMLOptGroupElement o) => DOMHTMLOptGroupElementK o
+data DOMHTMLOptGroupElementDisabledPropertyInfo
+data DOMHTMLOptGroupElementLabelPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLOptionElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLOptionElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLOptionElement.hs
@@ -0,0 +1,683 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLOptionElement
+    ( 
+
+-- * Exported types
+    DOMHTMLOptionElement(..)                ,
+    DOMHTMLOptionElementK                   ,
+    toDOMHTMLOptionElement                  ,
+    noDOMHTMLOptionElement                  ,
+
+
+ -- * Methods
+-- ** dOMHTMLOptionElementGetDefaultSelected
+    dOMHTMLOptionElementGetDefaultSelected  ,
+
+
+-- ** dOMHTMLOptionElementGetDisabled
+    dOMHTMLOptionElementGetDisabled         ,
+
+
+-- ** dOMHTMLOptionElementGetForm
+    dOMHTMLOptionElementGetForm             ,
+
+
+-- ** dOMHTMLOptionElementGetIndex
+    dOMHTMLOptionElementGetIndex            ,
+
+
+-- ** dOMHTMLOptionElementGetLabel
+    dOMHTMLOptionElementGetLabel            ,
+
+
+-- ** dOMHTMLOptionElementGetSelected
+    dOMHTMLOptionElementGetSelected         ,
+
+
+-- ** dOMHTMLOptionElementGetText
+    dOMHTMLOptionElementGetText             ,
+
+
+-- ** dOMHTMLOptionElementGetValue
+    dOMHTMLOptionElementGetValue            ,
+
+
+-- ** dOMHTMLOptionElementSetDefaultSelected
+    dOMHTMLOptionElementSetDefaultSelected  ,
+
+
+-- ** dOMHTMLOptionElementSetDisabled
+    dOMHTMLOptionElementSetDisabled         ,
+
+
+-- ** dOMHTMLOptionElementSetLabel
+    dOMHTMLOptionElementSetLabel            ,
+
+
+-- ** dOMHTMLOptionElementSetSelected
+    dOMHTMLOptionElementSetSelected         ,
+
+
+-- ** dOMHTMLOptionElementSetValue
+    dOMHTMLOptionElementSetValue            ,
+
+
+
+
+ -- * Properties
+-- ** DefaultSelected
+    DOMHTMLOptionElementDefaultSelectedPropertyInfo,
+    constructDOMHTMLOptionElementDefaultSelected,
+    getDOMHTMLOptionElementDefaultSelected  ,
+    setDOMHTMLOptionElementDefaultSelected  ,
+
+
+-- ** Disabled
+    DOMHTMLOptionElementDisabledPropertyInfo,
+    constructDOMHTMLOptionElementDisabled   ,
+    getDOMHTMLOptionElementDisabled         ,
+    setDOMHTMLOptionElementDisabled         ,
+
+
+-- ** Form
+    DOMHTMLOptionElementFormPropertyInfo    ,
+    getDOMHTMLOptionElementForm             ,
+
+
+-- ** Index
+    DOMHTMLOptionElementIndexPropertyInfo   ,
+    getDOMHTMLOptionElementIndex            ,
+
+
+-- ** Label
+    DOMHTMLOptionElementLabelPropertyInfo   ,
+    constructDOMHTMLOptionElementLabel      ,
+    getDOMHTMLOptionElementLabel            ,
+    setDOMHTMLOptionElementLabel            ,
+
+
+-- ** Selected
+    DOMHTMLOptionElementSelectedPropertyInfo,
+    constructDOMHTMLOptionElementSelected   ,
+    getDOMHTMLOptionElementSelected         ,
+    setDOMHTMLOptionElementSelected         ,
+
+
+-- ** Text
+    DOMHTMLOptionElementTextPropertyInfo    ,
+    getDOMHTMLOptionElementText             ,
+
+
+-- ** Value
+    DOMHTMLOptionElementValuePropertyInfo   ,
+    constructDOMHTMLOptionElementValue      ,
+    getDOMHTMLOptionElementValue            ,
+    setDOMHTMLOptionElementValue            ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLOptionElement = DOMHTMLOptionElement (ForeignPtr DOMHTMLOptionElement)
+foreign import ccall "webkit_dom_html_option_element_get_type"
+    c_webkit_dom_html_option_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLOptionElement = DOMHTMLOptionElementParentTypes
+type DOMHTMLOptionElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLOptionElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_option_element_get_type
+    
+
+class GObject o => DOMHTMLOptionElementK o
+instance (GObject o, IsDescendantOf DOMHTMLOptionElement o) => DOMHTMLOptionElementK o
+
+toDOMHTMLOptionElement :: DOMHTMLOptionElementK o => o -> IO DOMHTMLOptionElement
+toDOMHTMLOptionElement = unsafeCastTo DOMHTMLOptionElement
+
+noDOMHTMLOptionElement :: Maybe DOMHTMLOptionElement
+noDOMHTMLOptionElement = Nothing
+
+-- VVV Prop "default-selected"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLOptionElementDefaultSelected :: (MonadIO m, DOMHTMLOptionElementK o) => o -> m Bool
+getDOMHTMLOptionElementDefaultSelected obj = liftIO $ getObjectPropertyBool obj "default-selected"
+
+setDOMHTMLOptionElementDefaultSelected :: (MonadIO m, DOMHTMLOptionElementK o) => o -> Bool -> m ()
+setDOMHTMLOptionElementDefaultSelected obj val = liftIO $ setObjectPropertyBool obj "default-selected" val
+
+constructDOMHTMLOptionElementDefaultSelected :: Bool -> IO ([Char], GValue)
+constructDOMHTMLOptionElementDefaultSelected val = constructObjectPropertyBool "default-selected" val
+
+data DOMHTMLOptionElementDefaultSelectedPropertyInfo
+instance AttrInfo DOMHTMLOptionElementDefaultSelectedPropertyInfo where
+    type AttrAllowedOps DOMHTMLOptionElementDefaultSelectedPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOptionElementDefaultSelectedPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLOptionElementDefaultSelectedPropertyInfo = DOMHTMLOptionElementK
+    type AttrGetType DOMHTMLOptionElementDefaultSelectedPropertyInfo = Bool
+    type AttrLabel DOMHTMLOptionElementDefaultSelectedPropertyInfo = "DOMHTMLOptionElement::default-selected"
+    attrGet _ = getDOMHTMLOptionElementDefaultSelected
+    attrSet _ = setDOMHTMLOptionElementDefaultSelected
+    attrConstruct _ = constructDOMHTMLOptionElementDefaultSelected
+
+-- VVV Prop "disabled"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLOptionElementDisabled :: (MonadIO m, DOMHTMLOptionElementK o) => o -> m Bool
+getDOMHTMLOptionElementDisabled obj = liftIO $ getObjectPropertyBool obj "disabled"
+
+setDOMHTMLOptionElementDisabled :: (MonadIO m, DOMHTMLOptionElementK o) => o -> Bool -> m ()
+setDOMHTMLOptionElementDisabled obj val = liftIO $ setObjectPropertyBool obj "disabled" val
+
+constructDOMHTMLOptionElementDisabled :: Bool -> IO ([Char], GValue)
+constructDOMHTMLOptionElementDisabled val = constructObjectPropertyBool "disabled" val
+
+data DOMHTMLOptionElementDisabledPropertyInfo
+instance AttrInfo DOMHTMLOptionElementDisabledPropertyInfo where
+    type AttrAllowedOps DOMHTMLOptionElementDisabledPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOptionElementDisabledPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLOptionElementDisabledPropertyInfo = DOMHTMLOptionElementK
+    type AttrGetType DOMHTMLOptionElementDisabledPropertyInfo = Bool
+    type AttrLabel DOMHTMLOptionElementDisabledPropertyInfo = "DOMHTMLOptionElement::disabled"
+    attrGet _ = getDOMHTMLOptionElementDisabled
+    attrSet _ = setDOMHTMLOptionElementDisabled
+    attrConstruct _ = constructDOMHTMLOptionElementDisabled
+
+-- VVV Prop "form"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLOptionElementForm :: (MonadIO m, DOMHTMLOptionElementK o) => o -> m DOMHTMLFormElement
+getDOMHTMLOptionElementForm obj = liftIO $ getObjectPropertyObject obj "form" DOMHTMLFormElement
+
+data DOMHTMLOptionElementFormPropertyInfo
+instance AttrInfo DOMHTMLOptionElementFormPropertyInfo where
+    type AttrAllowedOps DOMHTMLOptionElementFormPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOptionElementFormPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLOptionElementFormPropertyInfo = DOMHTMLOptionElementK
+    type AttrGetType DOMHTMLOptionElementFormPropertyInfo = DOMHTMLFormElement
+    type AttrLabel DOMHTMLOptionElementFormPropertyInfo = "DOMHTMLOptionElement::form"
+    attrGet _ = getDOMHTMLOptionElementForm
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "index"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLOptionElementIndex :: (MonadIO m, DOMHTMLOptionElementK o) => o -> m Int64
+getDOMHTMLOptionElementIndex obj = liftIO $ getObjectPropertyInt64 obj "index"
+
+data DOMHTMLOptionElementIndexPropertyInfo
+instance AttrInfo DOMHTMLOptionElementIndexPropertyInfo where
+    type AttrAllowedOps DOMHTMLOptionElementIndexPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOptionElementIndexPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLOptionElementIndexPropertyInfo = DOMHTMLOptionElementK
+    type AttrGetType DOMHTMLOptionElementIndexPropertyInfo = Int64
+    type AttrLabel DOMHTMLOptionElementIndexPropertyInfo = "DOMHTMLOptionElement::index"
+    attrGet _ = getDOMHTMLOptionElementIndex
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "label"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLOptionElementLabel :: (MonadIO m, DOMHTMLOptionElementK o) => o -> m T.Text
+getDOMHTMLOptionElementLabel obj = liftIO $ getObjectPropertyString obj "label"
+
+setDOMHTMLOptionElementLabel :: (MonadIO m, DOMHTMLOptionElementK o) => o -> T.Text -> m ()
+setDOMHTMLOptionElementLabel obj val = liftIO $ setObjectPropertyString obj "label" val
+
+constructDOMHTMLOptionElementLabel :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLOptionElementLabel val = constructObjectPropertyString "label" val
+
+data DOMHTMLOptionElementLabelPropertyInfo
+instance AttrInfo DOMHTMLOptionElementLabelPropertyInfo where
+    type AttrAllowedOps DOMHTMLOptionElementLabelPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOptionElementLabelPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLOptionElementLabelPropertyInfo = DOMHTMLOptionElementK
+    type AttrGetType DOMHTMLOptionElementLabelPropertyInfo = T.Text
+    type AttrLabel DOMHTMLOptionElementLabelPropertyInfo = "DOMHTMLOptionElement::label"
+    attrGet _ = getDOMHTMLOptionElementLabel
+    attrSet _ = setDOMHTMLOptionElementLabel
+    attrConstruct _ = constructDOMHTMLOptionElementLabel
+
+-- VVV Prop "selected"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLOptionElementSelected :: (MonadIO m, DOMHTMLOptionElementK o) => o -> m Bool
+getDOMHTMLOptionElementSelected obj = liftIO $ getObjectPropertyBool obj "selected"
+
+setDOMHTMLOptionElementSelected :: (MonadIO m, DOMHTMLOptionElementK o) => o -> Bool -> m ()
+setDOMHTMLOptionElementSelected obj val = liftIO $ setObjectPropertyBool obj "selected" val
+
+constructDOMHTMLOptionElementSelected :: Bool -> IO ([Char], GValue)
+constructDOMHTMLOptionElementSelected val = constructObjectPropertyBool "selected" val
+
+data DOMHTMLOptionElementSelectedPropertyInfo
+instance AttrInfo DOMHTMLOptionElementSelectedPropertyInfo where
+    type AttrAllowedOps DOMHTMLOptionElementSelectedPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOptionElementSelectedPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLOptionElementSelectedPropertyInfo = DOMHTMLOptionElementK
+    type AttrGetType DOMHTMLOptionElementSelectedPropertyInfo = Bool
+    type AttrLabel DOMHTMLOptionElementSelectedPropertyInfo = "DOMHTMLOptionElement::selected"
+    attrGet _ = getDOMHTMLOptionElementSelected
+    attrSet _ = setDOMHTMLOptionElementSelected
+    attrConstruct _ = constructDOMHTMLOptionElementSelected
+
+-- VVV Prop "text"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLOptionElementText :: (MonadIO m, DOMHTMLOptionElementK o) => o -> m T.Text
+getDOMHTMLOptionElementText obj = liftIO $ getObjectPropertyString obj "text"
+
+data DOMHTMLOptionElementTextPropertyInfo
+instance AttrInfo DOMHTMLOptionElementTextPropertyInfo where
+    type AttrAllowedOps DOMHTMLOptionElementTextPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOptionElementTextPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLOptionElementTextPropertyInfo = DOMHTMLOptionElementK
+    type AttrGetType DOMHTMLOptionElementTextPropertyInfo = T.Text
+    type AttrLabel DOMHTMLOptionElementTextPropertyInfo = "DOMHTMLOptionElement::text"
+    attrGet _ = getDOMHTMLOptionElementText
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "value"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLOptionElementValue :: (MonadIO m, DOMHTMLOptionElementK o) => o -> m T.Text
+getDOMHTMLOptionElementValue obj = liftIO $ getObjectPropertyString obj "value"
+
+setDOMHTMLOptionElementValue :: (MonadIO m, DOMHTMLOptionElementK o) => o -> T.Text -> m ()
+setDOMHTMLOptionElementValue obj val = liftIO $ setObjectPropertyString obj "value" val
+
+constructDOMHTMLOptionElementValue :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLOptionElementValue val = constructObjectPropertyString "value" val
+
+data DOMHTMLOptionElementValuePropertyInfo
+instance AttrInfo DOMHTMLOptionElementValuePropertyInfo where
+    type AttrAllowedOps DOMHTMLOptionElementValuePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOptionElementValuePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLOptionElementValuePropertyInfo = DOMHTMLOptionElementK
+    type AttrGetType DOMHTMLOptionElementValuePropertyInfo = T.Text
+    type AttrLabel DOMHTMLOptionElementValuePropertyInfo = "DOMHTMLOptionElement::value"
+    attrGet _ = getDOMHTMLOptionElementValue
+    attrSet _ = setDOMHTMLOptionElementValue
+    attrConstruct _ = constructDOMHTMLOptionElementValue
+
+type instance AttributeList DOMHTMLOptionElement = DOMHTMLOptionElementAttributeList
+type DOMHTMLOptionElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("default-selected", DOMHTMLOptionElementDefaultSelectedPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("disabled", DOMHTMLOptionElementDisabledPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("form", DOMHTMLOptionElementFormPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("index", DOMHTMLOptionElementIndexPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("label", DOMHTMLOptionElementLabelPropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("selected", DOMHTMLOptionElementSelectedPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text", DOMHTMLOptionElementTextPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("value", DOMHTMLOptionElementValuePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLOptionElement = DOMHTMLOptionElementSignalList
+type DOMHTMLOptionElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLOptionElement::get_default_selected
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_option_element_get_default_selected" webkit_dom_html_option_element_get_default_selected :: 
+    Ptr DOMHTMLOptionElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionElement"
+    IO CInt
+
+
+dOMHTMLOptionElementGetDefaultSelected ::
+    (MonadIO m, DOMHTMLOptionElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLOptionElementGetDefaultSelected _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_option_element_get_default_selected _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLOptionElement::get_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_option_element_get_disabled" webkit_dom_html_option_element_get_disabled :: 
+    Ptr DOMHTMLOptionElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionElement"
+    IO CInt
+
+
+dOMHTMLOptionElementGetDisabled ::
+    (MonadIO m, DOMHTMLOptionElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLOptionElementGetDisabled _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_option_element_get_disabled _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLOptionElement::get_form
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_option_element_get_form" webkit_dom_html_option_element_get_form :: 
+    Ptr DOMHTMLOptionElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionElement"
+    IO (Ptr DOMHTMLFormElement)
+
+
+dOMHTMLOptionElementGetForm ::
+    (MonadIO m, DOMHTMLOptionElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLFormElement
+dOMHTMLOptionElementGetForm _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_option_element_get_form _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_option_element_get_form" result
+    result' <- (newObject DOMHTMLFormElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLOptionElement::get_index
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_option_element_get_index" webkit_dom_html_option_element_get_index :: 
+    Ptr DOMHTMLOptionElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionElement"
+    IO Int64
+
+
+dOMHTMLOptionElementGetIndex ::
+    (MonadIO m, DOMHTMLOptionElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLOptionElementGetIndex _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_option_element_get_index _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLOptionElement::get_label
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_option_element_get_label" webkit_dom_html_option_element_get_label :: 
+    Ptr DOMHTMLOptionElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionElement"
+    IO CString
+
+
+dOMHTMLOptionElementGetLabel ::
+    (MonadIO m, DOMHTMLOptionElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLOptionElementGetLabel _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_option_element_get_label _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_option_element_get_label" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLOptionElement::get_selected
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_option_element_get_selected" webkit_dom_html_option_element_get_selected :: 
+    Ptr DOMHTMLOptionElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionElement"
+    IO CInt
+
+
+dOMHTMLOptionElementGetSelected ::
+    (MonadIO m, DOMHTMLOptionElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLOptionElementGetSelected _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_option_element_get_selected _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLOptionElement::get_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_option_element_get_text" webkit_dom_html_option_element_get_text :: 
+    Ptr DOMHTMLOptionElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionElement"
+    IO CString
+
+
+dOMHTMLOptionElementGetText ::
+    (MonadIO m, DOMHTMLOptionElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLOptionElementGetText _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_option_element_get_text _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_option_element_get_text" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLOptionElement::get_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_option_element_get_value" webkit_dom_html_option_element_get_value :: 
+    Ptr DOMHTMLOptionElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionElement"
+    IO CString
+
+
+dOMHTMLOptionElementGetValue ::
+    (MonadIO m, DOMHTMLOptionElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLOptionElementGetValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_option_element_get_value _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_option_element_get_value" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLOptionElement::set_default_selected
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_option_element_set_default_selected" webkit_dom_html_option_element_set_default_selected :: 
+    Ptr DOMHTMLOptionElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLOptionElementSetDefaultSelected ::
+    (MonadIO m, DOMHTMLOptionElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLOptionElementSetDefaultSelected _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_option_element_set_default_selected _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLOptionElement::set_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_option_element_set_disabled" webkit_dom_html_option_element_set_disabled :: 
+    Ptr DOMHTMLOptionElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLOptionElementSetDisabled ::
+    (MonadIO m, DOMHTMLOptionElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLOptionElementSetDisabled _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_option_element_set_disabled _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLOptionElement::set_label
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_option_element_set_label" webkit_dom_html_option_element_set_label :: 
+    Ptr DOMHTMLOptionElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLOptionElementSetLabel ::
+    (MonadIO m, DOMHTMLOptionElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLOptionElementSetLabel _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_option_element_set_label _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLOptionElement::set_selected
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_option_element_set_selected" webkit_dom_html_option_element_set_selected :: 
+    Ptr DOMHTMLOptionElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLOptionElementSetSelected ::
+    (MonadIO m, DOMHTMLOptionElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLOptionElementSetSelected _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_option_element_set_selected _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLOptionElement::set_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_option_element_set_value" webkit_dom_html_option_element_set_value :: 
+    Ptr DOMHTMLOptionElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLOptionElementSetValue ::
+    (MonadIO m, DOMHTMLOptionElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLOptionElementSetValue _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_option_element_set_value _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLOptionElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLOptionElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLOptionElement.hs-boot
@@ -0,0 +1,21 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLOptionElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLOptionElement = DOMHTMLOptionElement (ForeignPtr DOMHTMLOptionElement)
+instance GObject DOMHTMLOptionElement where
+class GObject o => DOMHTMLOptionElementK o
+instance (GObject o, IsDescendantOf DOMHTMLOptionElement o) => DOMHTMLOptionElementK o
+data DOMHTMLOptionElementDefaultSelectedPropertyInfo
+data DOMHTMLOptionElementDisabledPropertyInfo
+data DOMHTMLOptionElementFormPropertyInfo
+data DOMHTMLOptionElementIndexPropertyInfo
+data DOMHTMLOptionElementLabelPropertyInfo
+data DOMHTMLOptionElementSelectedPropertyInfo
+data DOMHTMLOptionElementTextPropertyInfo
+data DOMHTMLOptionElementValuePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLOptionsCollection.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLOptionsCollection.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLOptionsCollection.hs
@@ -0,0 +1,238 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLOptionsCollection
+    ( 
+
+-- * Exported types
+    DOMHTMLOptionsCollection(..)            ,
+    DOMHTMLOptionsCollectionK               ,
+    toDOMHTMLOptionsCollection              ,
+    noDOMHTMLOptionsCollection              ,
+
+
+ -- * Methods
+-- ** dOMHTMLOptionsCollectionGetLength
+    dOMHTMLOptionsCollectionGetLength       ,
+
+
+-- ** dOMHTMLOptionsCollectionGetSelectedIndex
+    dOMHTMLOptionsCollectionGetSelectedIndex,
+
+
+-- ** dOMHTMLOptionsCollectionNamedItem
+    dOMHTMLOptionsCollectionNamedItem       ,
+
+
+-- ** dOMHTMLOptionsCollectionSetSelectedIndex
+    dOMHTMLOptionsCollectionSetSelectedIndex,
+
+
+
+
+ -- * Properties
+-- ** Length
+    DOMHTMLOptionsCollectionLengthPropertyInfo,
+    getDOMHTMLOptionsCollectionLength       ,
+
+
+-- ** SelectedIndex
+    DOMHTMLOptionsCollectionSelectedIndexPropertyInfo,
+    constructDOMHTMLOptionsCollectionSelectedIndex,
+    getDOMHTMLOptionsCollectionSelectedIndex,
+    setDOMHTMLOptionsCollectionSelectedIndex,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLOptionsCollection = DOMHTMLOptionsCollection (ForeignPtr DOMHTMLOptionsCollection)
+foreign import ccall "webkit_dom_html_options_collection_get_type"
+    c_webkit_dom_html_options_collection_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLOptionsCollection = DOMHTMLOptionsCollectionParentTypes
+type DOMHTMLOptionsCollectionParentTypes = '[DOMHTMLCollection, DOMObject, GObject.Object]
+
+instance GObject DOMHTMLOptionsCollection where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_options_collection_get_type
+    
+
+class GObject o => DOMHTMLOptionsCollectionK o
+instance (GObject o, IsDescendantOf DOMHTMLOptionsCollection o) => DOMHTMLOptionsCollectionK o
+
+toDOMHTMLOptionsCollection :: DOMHTMLOptionsCollectionK o => o -> IO DOMHTMLOptionsCollection
+toDOMHTMLOptionsCollection = unsafeCastTo DOMHTMLOptionsCollection
+
+noDOMHTMLOptionsCollection :: Maybe DOMHTMLOptionsCollection
+noDOMHTMLOptionsCollection = Nothing
+
+-- VVV Prop "length"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLOptionsCollectionLength :: (MonadIO m, DOMHTMLOptionsCollectionK o) => o -> m Word64
+getDOMHTMLOptionsCollectionLength obj = liftIO $ getObjectPropertyUInt64 obj "length"
+
+data DOMHTMLOptionsCollectionLengthPropertyInfo
+instance AttrInfo DOMHTMLOptionsCollectionLengthPropertyInfo where
+    type AttrAllowedOps DOMHTMLOptionsCollectionLengthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOptionsCollectionLengthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLOptionsCollectionLengthPropertyInfo = DOMHTMLOptionsCollectionK
+    type AttrGetType DOMHTMLOptionsCollectionLengthPropertyInfo = Word64
+    type AttrLabel DOMHTMLOptionsCollectionLengthPropertyInfo = "DOMHTMLOptionsCollection::length"
+    attrGet _ = getDOMHTMLOptionsCollectionLength
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "selected-index"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLOptionsCollectionSelectedIndex :: (MonadIO m, DOMHTMLOptionsCollectionK o) => o -> m Int64
+getDOMHTMLOptionsCollectionSelectedIndex obj = liftIO $ getObjectPropertyInt64 obj "selected-index"
+
+setDOMHTMLOptionsCollectionSelectedIndex :: (MonadIO m, DOMHTMLOptionsCollectionK o) => o -> Int64 -> m ()
+setDOMHTMLOptionsCollectionSelectedIndex obj val = liftIO $ setObjectPropertyInt64 obj "selected-index" val
+
+constructDOMHTMLOptionsCollectionSelectedIndex :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLOptionsCollectionSelectedIndex val = constructObjectPropertyInt64 "selected-index" val
+
+data DOMHTMLOptionsCollectionSelectedIndexPropertyInfo
+instance AttrInfo DOMHTMLOptionsCollectionSelectedIndexPropertyInfo where
+    type AttrAllowedOps DOMHTMLOptionsCollectionSelectedIndexPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLOptionsCollectionSelectedIndexPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLOptionsCollectionSelectedIndexPropertyInfo = DOMHTMLOptionsCollectionK
+    type AttrGetType DOMHTMLOptionsCollectionSelectedIndexPropertyInfo = Int64
+    type AttrLabel DOMHTMLOptionsCollectionSelectedIndexPropertyInfo = "DOMHTMLOptionsCollection::selected-index"
+    attrGet _ = getDOMHTMLOptionsCollectionSelectedIndex
+    attrSet _ = setDOMHTMLOptionsCollectionSelectedIndex
+    attrConstruct _ = constructDOMHTMLOptionsCollectionSelectedIndex
+
+type instance AttributeList DOMHTMLOptionsCollection = DOMHTMLOptionsCollectionAttributeList
+type DOMHTMLOptionsCollectionAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("length", DOMHTMLOptionsCollectionLengthPropertyInfo), '("selected-index", DOMHTMLOptionsCollectionSelectedIndexPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLOptionsCollection = DOMHTMLOptionsCollectionSignalList
+type DOMHTMLOptionsCollectionSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLOptionsCollection::get_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionsCollection", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionsCollection", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_options_collection_get_length" webkit_dom_html_options_collection_get_length :: 
+    Ptr DOMHTMLOptionsCollection ->         -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionsCollection"
+    IO Word64
+
+
+dOMHTMLOptionsCollectionGetLength ::
+    (MonadIO m, DOMHTMLOptionsCollectionK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMHTMLOptionsCollectionGetLength _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_options_collection_get_length _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLOptionsCollection::get_selected_index
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionsCollection", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionsCollection", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_options_collection_get_selected_index" webkit_dom_html_options_collection_get_selected_index :: 
+    Ptr DOMHTMLOptionsCollection ->         -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionsCollection"
+    IO Int64
+
+
+dOMHTMLOptionsCollectionGetSelectedIndex ::
+    (MonadIO m, DOMHTMLOptionsCollectionK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLOptionsCollectionGetSelectedIndex _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_options_collection_get_selected_index _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLOptionsCollection::named_item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionsCollection", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionsCollection", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_options_collection_named_item" webkit_dom_html_options_collection_named_item :: 
+    Ptr DOMHTMLOptionsCollection ->         -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionsCollection"
+    CString ->                              -- name : TBasicType TUTF8
+    IO (Ptr DOMNode)
+
+
+dOMHTMLOptionsCollectionNamedItem ::
+    (MonadIO m, DOMHTMLOptionsCollectionK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- name
+    m DOMNode
+dOMHTMLOptionsCollectionNamedItem _obj name = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    name' <- textToCString name
+    result <- webkit_dom_html_options_collection_named_item _obj' name'
+    checkUnexpectedReturnNULL "webkit_dom_html_options_collection_named_item" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    freeMem name'
+    return result'
+
+-- method DOMHTMLOptionsCollection::set_selected_index
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionsCollection", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLOptionsCollection", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_options_collection_set_selected_index" webkit_dom_html_options_collection_set_selected_index :: 
+    Ptr DOMHTMLOptionsCollection ->         -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLOptionsCollection"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLOptionsCollectionSetSelectedIndex ::
+    (MonadIO m, DOMHTMLOptionsCollectionK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLOptionsCollectionSetSelectedIndex _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_options_collection_set_selected_index _obj' value
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLOptionsCollection.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLOptionsCollection.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLOptionsCollection.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLOptionsCollection where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLOptionsCollection = DOMHTMLOptionsCollection (ForeignPtr DOMHTMLOptionsCollection)
+instance GObject DOMHTMLOptionsCollection where
+class GObject o => DOMHTMLOptionsCollectionK o
+instance (GObject o, IsDescendantOf DOMHTMLOptionsCollection o) => DOMHTMLOptionsCollectionK o
+data DOMHTMLOptionsCollectionLengthPropertyInfo
+data DOMHTMLOptionsCollectionSelectedIndexPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLParagraphElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLParagraphElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLParagraphElement.hs
@@ -0,0 +1,158 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLParagraphElement
+    ( 
+
+-- * Exported types
+    DOMHTMLParagraphElement(..)             ,
+    DOMHTMLParagraphElementK                ,
+    toDOMHTMLParagraphElement               ,
+    noDOMHTMLParagraphElement               ,
+
+
+ -- * Methods
+-- ** dOMHTMLParagraphElementGetAlign
+    dOMHTMLParagraphElementGetAlign         ,
+
+
+-- ** dOMHTMLParagraphElementSetAlign
+    dOMHTMLParagraphElementSetAlign         ,
+
+
+
+
+ -- * Properties
+-- ** Align
+    DOMHTMLParagraphElementAlignPropertyInfo,
+    constructDOMHTMLParagraphElementAlign   ,
+    getDOMHTMLParagraphElementAlign         ,
+    setDOMHTMLParagraphElementAlign         ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLParagraphElement = DOMHTMLParagraphElement (ForeignPtr DOMHTMLParagraphElement)
+foreign import ccall "webkit_dom_html_paragraph_element_get_type"
+    c_webkit_dom_html_paragraph_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLParagraphElement = DOMHTMLParagraphElementParentTypes
+type DOMHTMLParagraphElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLParagraphElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_paragraph_element_get_type
+    
+
+class GObject o => DOMHTMLParagraphElementK o
+instance (GObject o, IsDescendantOf DOMHTMLParagraphElement o) => DOMHTMLParagraphElementK o
+
+toDOMHTMLParagraphElement :: DOMHTMLParagraphElementK o => o -> IO DOMHTMLParagraphElement
+toDOMHTMLParagraphElement = unsafeCastTo DOMHTMLParagraphElement
+
+noDOMHTMLParagraphElement :: Maybe DOMHTMLParagraphElement
+noDOMHTMLParagraphElement = Nothing
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLParagraphElementAlign :: (MonadIO m, DOMHTMLParagraphElementK o) => o -> m T.Text
+getDOMHTMLParagraphElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLParagraphElementAlign :: (MonadIO m, DOMHTMLParagraphElementK o) => o -> T.Text -> m ()
+setDOMHTMLParagraphElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLParagraphElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLParagraphElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLParagraphElementAlignPropertyInfo
+instance AttrInfo DOMHTMLParagraphElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLParagraphElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLParagraphElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLParagraphElementAlignPropertyInfo = DOMHTMLParagraphElementK
+    type AttrGetType DOMHTMLParagraphElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLParagraphElementAlignPropertyInfo = "DOMHTMLParagraphElement::align"
+    attrGet _ = getDOMHTMLParagraphElementAlign
+    attrSet _ = setDOMHTMLParagraphElementAlign
+    attrConstruct _ = constructDOMHTMLParagraphElementAlign
+
+type instance AttributeList DOMHTMLParagraphElement = DOMHTMLParagraphElementAttributeList
+type DOMHTMLParagraphElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLParagraphElementAlignPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLParagraphElement = DOMHTMLParagraphElementSignalList
+type DOMHTMLParagraphElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLParagraphElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParagraphElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParagraphElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_paragraph_element_get_align" webkit_dom_html_paragraph_element_get_align :: 
+    Ptr DOMHTMLParagraphElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLParagraphElement"
+    IO CString
+
+
+dOMHTMLParagraphElementGetAlign ::
+    (MonadIO m, DOMHTMLParagraphElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLParagraphElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_paragraph_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_paragraph_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLParagraphElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParagraphElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParagraphElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_paragraph_element_set_align" webkit_dom_html_paragraph_element_set_align :: 
+    Ptr DOMHTMLParagraphElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLParagraphElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLParagraphElementSetAlign ::
+    (MonadIO m, DOMHTMLParagraphElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLParagraphElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_paragraph_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLParagraphElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLParagraphElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLParagraphElement.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLParagraphElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLParagraphElement = DOMHTMLParagraphElement (ForeignPtr DOMHTMLParagraphElement)
+instance GObject DOMHTMLParagraphElement where
+class GObject o => DOMHTMLParagraphElementK o
+instance (GObject o, IsDescendantOf DOMHTMLParagraphElement o) => DOMHTMLParagraphElementK o
+data DOMHTMLParagraphElementAlignPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLParamElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLParamElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLParamElement.hs
@@ -0,0 +1,440 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLParamElement
+    ( 
+
+-- * Exported types
+    DOMHTMLParamElement(..)                 ,
+    DOMHTMLParamElementK                    ,
+    toDOMHTMLParamElement                   ,
+    noDOMHTMLParamElement                   ,
+
+
+ -- * Methods
+-- ** dOMHTMLParamElementGetName
+    dOMHTMLParamElementGetName              ,
+
+
+-- ** dOMHTMLParamElementGetTypeAttr
+    dOMHTMLParamElementGetTypeAttr          ,
+
+
+-- ** dOMHTMLParamElementGetValue
+    dOMHTMLParamElementGetValue             ,
+
+
+-- ** dOMHTMLParamElementGetValueType
+    dOMHTMLParamElementGetValueType         ,
+
+
+-- ** dOMHTMLParamElementSetName
+    dOMHTMLParamElementSetName              ,
+
+
+-- ** dOMHTMLParamElementSetTypeAttr
+    dOMHTMLParamElementSetTypeAttr          ,
+
+
+-- ** dOMHTMLParamElementSetValue
+    dOMHTMLParamElementSetValue             ,
+
+
+-- ** dOMHTMLParamElementSetValueType
+    dOMHTMLParamElementSetValueType         ,
+
+
+
+
+ -- * Properties
+-- ** Name
+    DOMHTMLParamElementNamePropertyInfo     ,
+    constructDOMHTMLParamElementName        ,
+    getDOMHTMLParamElementName              ,
+    setDOMHTMLParamElementName              ,
+
+
+-- ** Type
+    DOMHTMLParamElementTypePropertyInfo     ,
+    constructDOMHTMLParamElementType        ,
+    getDOMHTMLParamElementType              ,
+    setDOMHTMLParamElementType              ,
+
+
+-- ** Value
+    DOMHTMLParamElementValuePropertyInfo    ,
+    constructDOMHTMLParamElementValue       ,
+    getDOMHTMLParamElementValue             ,
+    setDOMHTMLParamElementValue             ,
+
+
+-- ** ValueType
+    DOMHTMLParamElementValueTypePropertyInfo,
+    constructDOMHTMLParamElementValueType   ,
+    getDOMHTMLParamElementValueType         ,
+    setDOMHTMLParamElementValueType         ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLParamElement = DOMHTMLParamElement (ForeignPtr DOMHTMLParamElement)
+foreign import ccall "webkit_dom_html_param_element_get_type"
+    c_webkit_dom_html_param_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLParamElement = DOMHTMLParamElementParentTypes
+type DOMHTMLParamElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLParamElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_param_element_get_type
+    
+
+class GObject o => DOMHTMLParamElementK o
+instance (GObject o, IsDescendantOf DOMHTMLParamElement o) => DOMHTMLParamElementK o
+
+toDOMHTMLParamElement :: DOMHTMLParamElementK o => o -> IO DOMHTMLParamElement
+toDOMHTMLParamElement = unsafeCastTo DOMHTMLParamElement
+
+noDOMHTMLParamElement :: Maybe DOMHTMLParamElement
+noDOMHTMLParamElement = Nothing
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLParamElementName :: (MonadIO m, DOMHTMLParamElementK o) => o -> m T.Text
+getDOMHTMLParamElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLParamElementName :: (MonadIO m, DOMHTMLParamElementK o) => o -> T.Text -> m ()
+setDOMHTMLParamElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLParamElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLParamElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLParamElementNamePropertyInfo
+instance AttrInfo DOMHTMLParamElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLParamElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLParamElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLParamElementNamePropertyInfo = DOMHTMLParamElementK
+    type AttrGetType DOMHTMLParamElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLParamElementNamePropertyInfo = "DOMHTMLParamElement::name"
+    attrGet _ = getDOMHTMLParamElementName
+    attrSet _ = setDOMHTMLParamElementName
+    attrConstruct _ = constructDOMHTMLParamElementName
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLParamElementType :: (MonadIO m, DOMHTMLParamElementK o) => o -> m T.Text
+getDOMHTMLParamElementType obj = liftIO $ getObjectPropertyString obj "type"
+
+setDOMHTMLParamElementType :: (MonadIO m, DOMHTMLParamElementK o) => o -> T.Text -> m ()
+setDOMHTMLParamElementType obj val = liftIO $ setObjectPropertyString obj "type" val
+
+constructDOMHTMLParamElementType :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLParamElementType val = constructObjectPropertyString "type" val
+
+data DOMHTMLParamElementTypePropertyInfo
+instance AttrInfo DOMHTMLParamElementTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLParamElementTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLParamElementTypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLParamElementTypePropertyInfo = DOMHTMLParamElementK
+    type AttrGetType DOMHTMLParamElementTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLParamElementTypePropertyInfo = "DOMHTMLParamElement::type"
+    attrGet _ = getDOMHTMLParamElementType
+    attrSet _ = setDOMHTMLParamElementType
+    attrConstruct _ = constructDOMHTMLParamElementType
+
+-- VVV Prop "value"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLParamElementValue :: (MonadIO m, DOMHTMLParamElementK o) => o -> m T.Text
+getDOMHTMLParamElementValue obj = liftIO $ getObjectPropertyString obj "value"
+
+setDOMHTMLParamElementValue :: (MonadIO m, DOMHTMLParamElementK o) => o -> T.Text -> m ()
+setDOMHTMLParamElementValue obj val = liftIO $ setObjectPropertyString obj "value" val
+
+constructDOMHTMLParamElementValue :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLParamElementValue val = constructObjectPropertyString "value" val
+
+data DOMHTMLParamElementValuePropertyInfo
+instance AttrInfo DOMHTMLParamElementValuePropertyInfo where
+    type AttrAllowedOps DOMHTMLParamElementValuePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLParamElementValuePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLParamElementValuePropertyInfo = DOMHTMLParamElementK
+    type AttrGetType DOMHTMLParamElementValuePropertyInfo = T.Text
+    type AttrLabel DOMHTMLParamElementValuePropertyInfo = "DOMHTMLParamElement::value"
+    attrGet _ = getDOMHTMLParamElementValue
+    attrSet _ = setDOMHTMLParamElementValue
+    attrConstruct _ = constructDOMHTMLParamElementValue
+
+-- VVV Prop "value-type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLParamElementValueType :: (MonadIO m, DOMHTMLParamElementK o) => o -> m T.Text
+getDOMHTMLParamElementValueType obj = liftIO $ getObjectPropertyString obj "value-type"
+
+setDOMHTMLParamElementValueType :: (MonadIO m, DOMHTMLParamElementK o) => o -> T.Text -> m ()
+setDOMHTMLParamElementValueType obj val = liftIO $ setObjectPropertyString obj "value-type" val
+
+constructDOMHTMLParamElementValueType :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLParamElementValueType val = constructObjectPropertyString "value-type" val
+
+data DOMHTMLParamElementValueTypePropertyInfo
+instance AttrInfo DOMHTMLParamElementValueTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLParamElementValueTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLParamElementValueTypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLParamElementValueTypePropertyInfo = DOMHTMLParamElementK
+    type AttrGetType DOMHTMLParamElementValueTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLParamElementValueTypePropertyInfo = "DOMHTMLParamElement::value-type"
+    attrGet _ = getDOMHTMLParamElementValueType
+    attrSet _ = setDOMHTMLParamElementValueType
+    attrConstruct _ = constructDOMHTMLParamElementValueType
+
+type instance AttributeList DOMHTMLParamElement = DOMHTMLParamElementAttributeList
+type DOMHTMLParamElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("name", DOMHTMLParamElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLParamElementTypePropertyInfo), '("value", DOMHTMLParamElementValuePropertyInfo), '("value-type", DOMHTMLParamElementValueTypePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLParamElement = DOMHTMLParamElementSignalList
+type DOMHTMLParamElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLParamElement::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_param_element_get_name" webkit_dom_html_param_element_get_name :: 
+    Ptr DOMHTMLParamElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLParamElement"
+    IO CString
+
+
+dOMHTMLParamElementGetName ::
+    (MonadIO m, DOMHTMLParamElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLParamElementGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_param_element_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_param_element_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLParamElement::get_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_param_element_get_type_attr" webkit_dom_html_param_element_get_type_attr :: 
+    Ptr DOMHTMLParamElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLParamElement"
+    IO CString
+
+
+dOMHTMLParamElementGetTypeAttr ::
+    (MonadIO m, DOMHTMLParamElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLParamElementGetTypeAttr _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_param_element_get_type_attr _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_param_element_get_type_attr" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLParamElement::get_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_param_element_get_value" webkit_dom_html_param_element_get_value :: 
+    Ptr DOMHTMLParamElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLParamElement"
+    IO CString
+
+
+dOMHTMLParamElementGetValue ::
+    (MonadIO m, DOMHTMLParamElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLParamElementGetValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_param_element_get_value _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_param_element_get_value" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLParamElement::get_value_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_param_element_get_value_type" webkit_dom_html_param_element_get_value_type :: 
+    Ptr DOMHTMLParamElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLParamElement"
+    IO CString
+
+
+dOMHTMLParamElementGetValueType ::
+    (MonadIO m, DOMHTMLParamElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLParamElementGetValueType _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_param_element_get_value_type _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_param_element_get_value_type" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLParamElement::set_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_param_element_set_name" webkit_dom_html_param_element_set_name :: 
+    Ptr DOMHTMLParamElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLParamElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLParamElementSetName ::
+    (MonadIO m, DOMHTMLParamElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLParamElementSetName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_param_element_set_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLParamElement::set_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_param_element_set_type_attr" webkit_dom_html_param_element_set_type_attr :: 
+    Ptr DOMHTMLParamElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLParamElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLParamElementSetTypeAttr ::
+    (MonadIO m, DOMHTMLParamElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLParamElementSetTypeAttr _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_param_element_set_type_attr _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLParamElement::set_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_param_element_set_value" webkit_dom_html_param_element_set_value :: 
+    Ptr DOMHTMLParamElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLParamElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLParamElementSetValue ::
+    (MonadIO m, DOMHTMLParamElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLParamElementSetValue _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_param_element_set_value _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLParamElement::set_value_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLParamElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_param_element_set_value_type" webkit_dom_html_param_element_set_value_type :: 
+    Ptr DOMHTMLParamElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLParamElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLParamElementSetValueType ::
+    (MonadIO m, DOMHTMLParamElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLParamElementSetValueType _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_param_element_set_value_type _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLParamElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLParamElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLParamElement.hs-boot
@@ -0,0 +1,17 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLParamElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLParamElement = DOMHTMLParamElement (ForeignPtr DOMHTMLParamElement)
+instance GObject DOMHTMLParamElement where
+class GObject o => DOMHTMLParamElementK o
+instance (GObject o, IsDescendantOf DOMHTMLParamElement o) => DOMHTMLParamElementK o
+data DOMHTMLParamElementNamePropertyInfo
+data DOMHTMLParamElementTypePropertyInfo
+data DOMHTMLParamElementValuePropertyInfo
+data DOMHTMLParamElementValueTypePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLPreElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLPreElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLPreElement.hs
@@ -0,0 +1,244 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLPreElement
+    ( 
+
+-- * Exported types
+    DOMHTMLPreElement(..)                   ,
+    DOMHTMLPreElementK                      ,
+    toDOMHTMLPreElement                     ,
+    noDOMHTMLPreElement                     ,
+
+
+ -- * Methods
+-- ** dOMHTMLPreElementGetWidth
+    dOMHTMLPreElementGetWidth               ,
+
+
+-- ** dOMHTMLPreElementGetWrap
+    dOMHTMLPreElementGetWrap                ,
+
+
+-- ** dOMHTMLPreElementSetWidth
+    dOMHTMLPreElementSetWidth               ,
+
+
+-- ** dOMHTMLPreElementSetWrap
+    dOMHTMLPreElementSetWrap                ,
+
+
+
+
+ -- * Properties
+-- ** Width
+    DOMHTMLPreElementWidthPropertyInfo      ,
+    constructDOMHTMLPreElementWidth         ,
+    getDOMHTMLPreElementWidth               ,
+    setDOMHTMLPreElementWidth               ,
+
+
+-- ** Wrap
+    DOMHTMLPreElementWrapPropertyInfo       ,
+    constructDOMHTMLPreElementWrap          ,
+    getDOMHTMLPreElementWrap                ,
+    setDOMHTMLPreElementWrap                ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLPreElement = DOMHTMLPreElement (ForeignPtr DOMHTMLPreElement)
+foreign import ccall "webkit_dom_html_pre_element_get_type"
+    c_webkit_dom_html_pre_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLPreElement = DOMHTMLPreElementParentTypes
+type DOMHTMLPreElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLPreElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_pre_element_get_type
+    
+
+class GObject o => DOMHTMLPreElementK o
+instance (GObject o, IsDescendantOf DOMHTMLPreElement o) => DOMHTMLPreElementK o
+
+toDOMHTMLPreElement :: DOMHTMLPreElementK o => o -> IO DOMHTMLPreElement
+toDOMHTMLPreElement = unsafeCastTo DOMHTMLPreElement
+
+noDOMHTMLPreElement :: Maybe DOMHTMLPreElement
+noDOMHTMLPreElement = Nothing
+
+-- VVV Prop "width"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLPreElementWidth :: (MonadIO m, DOMHTMLPreElementK o) => o -> m Int64
+getDOMHTMLPreElementWidth obj = liftIO $ getObjectPropertyInt64 obj "width"
+
+setDOMHTMLPreElementWidth :: (MonadIO m, DOMHTMLPreElementK o) => o -> Int64 -> m ()
+setDOMHTMLPreElementWidth obj val = liftIO $ setObjectPropertyInt64 obj "width" val
+
+constructDOMHTMLPreElementWidth :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLPreElementWidth val = constructObjectPropertyInt64 "width" val
+
+data DOMHTMLPreElementWidthPropertyInfo
+instance AttrInfo DOMHTMLPreElementWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLPreElementWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLPreElementWidthPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLPreElementWidthPropertyInfo = DOMHTMLPreElementK
+    type AttrGetType DOMHTMLPreElementWidthPropertyInfo = Int64
+    type AttrLabel DOMHTMLPreElementWidthPropertyInfo = "DOMHTMLPreElement::width"
+    attrGet _ = getDOMHTMLPreElementWidth
+    attrSet _ = setDOMHTMLPreElementWidth
+    attrConstruct _ = constructDOMHTMLPreElementWidth
+
+-- VVV Prop "wrap"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLPreElementWrap :: (MonadIO m, DOMHTMLPreElementK o) => o -> m Bool
+getDOMHTMLPreElementWrap obj = liftIO $ getObjectPropertyBool obj "wrap"
+
+setDOMHTMLPreElementWrap :: (MonadIO m, DOMHTMLPreElementK o) => o -> Bool -> m ()
+setDOMHTMLPreElementWrap obj val = liftIO $ setObjectPropertyBool obj "wrap" val
+
+constructDOMHTMLPreElementWrap :: Bool -> IO ([Char], GValue)
+constructDOMHTMLPreElementWrap val = constructObjectPropertyBool "wrap" val
+
+data DOMHTMLPreElementWrapPropertyInfo
+instance AttrInfo DOMHTMLPreElementWrapPropertyInfo where
+    type AttrAllowedOps DOMHTMLPreElementWrapPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLPreElementWrapPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLPreElementWrapPropertyInfo = DOMHTMLPreElementK
+    type AttrGetType DOMHTMLPreElementWrapPropertyInfo = Bool
+    type AttrLabel DOMHTMLPreElementWrapPropertyInfo = "DOMHTMLPreElement::wrap"
+    attrGet _ = getDOMHTMLPreElementWrap
+    attrSet _ = setDOMHTMLPreElementWrap
+    attrConstruct _ = constructDOMHTMLPreElementWrap
+
+type instance AttributeList DOMHTMLPreElement = DOMHTMLPreElementAttributeList
+type DOMHTMLPreElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("width", DOMHTMLPreElementWidthPropertyInfo), '("wrap", DOMHTMLPreElementWrapPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLPreElement = DOMHTMLPreElementSignalList
+type DOMHTMLPreElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLPreElement::get_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLPreElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLPreElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_pre_element_get_width" webkit_dom_html_pre_element_get_width :: 
+    Ptr DOMHTMLPreElement ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLPreElement"
+    IO Int64
+
+
+dOMHTMLPreElementGetWidth ::
+    (MonadIO m, DOMHTMLPreElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLPreElementGetWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_pre_element_get_width _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLPreElement::get_wrap
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLPreElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLPreElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_pre_element_get_wrap" webkit_dom_html_pre_element_get_wrap :: 
+    Ptr DOMHTMLPreElement ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLPreElement"
+    IO CInt
+
+
+dOMHTMLPreElementGetWrap ::
+    (MonadIO m, DOMHTMLPreElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLPreElementGetWrap _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_pre_element_get_wrap _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLPreElement::set_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLPreElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLPreElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_pre_element_set_width" webkit_dom_html_pre_element_set_width :: 
+    Ptr DOMHTMLPreElement ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLPreElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLPreElementSetWidth ::
+    (MonadIO m, DOMHTMLPreElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLPreElementSetWidth _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_pre_element_set_width _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLPreElement::set_wrap
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLPreElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLPreElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_pre_element_set_wrap" webkit_dom_html_pre_element_set_wrap :: 
+    Ptr DOMHTMLPreElement ->                -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLPreElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLPreElementSetWrap ::
+    (MonadIO m, DOMHTMLPreElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLPreElementSetWrap _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_pre_element_set_wrap _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLPreElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLPreElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLPreElement.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLPreElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLPreElement = DOMHTMLPreElement (ForeignPtr DOMHTMLPreElement)
+instance GObject DOMHTMLPreElement where
+class GObject o => DOMHTMLPreElementK o
+instance (GObject o, IsDescendantOf DOMHTMLPreElement o) => DOMHTMLPreElementK o
+data DOMHTMLPreElementWidthPropertyInfo
+data DOMHTMLPreElementWrapPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLQuoteElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLQuoteElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLQuoteElement.hs
@@ -0,0 +1,158 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLQuoteElement
+    ( 
+
+-- * Exported types
+    DOMHTMLQuoteElement(..)                 ,
+    DOMHTMLQuoteElementK                    ,
+    toDOMHTMLQuoteElement                   ,
+    noDOMHTMLQuoteElement                   ,
+
+
+ -- * Methods
+-- ** dOMHTMLQuoteElementGetCite
+    dOMHTMLQuoteElementGetCite              ,
+
+
+-- ** dOMHTMLQuoteElementSetCite
+    dOMHTMLQuoteElementSetCite              ,
+
+
+
+
+ -- * Properties
+-- ** Cite
+    DOMHTMLQuoteElementCitePropertyInfo     ,
+    constructDOMHTMLQuoteElementCite        ,
+    getDOMHTMLQuoteElementCite              ,
+    setDOMHTMLQuoteElementCite              ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLQuoteElement = DOMHTMLQuoteElement (ForeignPtr DOMHTMLQuoteElement)
+foreign import ccall "webkit_dom_html_quote_element_get_type"
+    c_webkit_dom_html_quote_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLQuoteElement = DOMHTMLQuoteElementParentTypes
+type DOMHTMLQuoteElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLQuoteElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_quote_element_get_type
+    
+
+class GObject o => DOMHTMLQuoteElementK o
+instance (GObject o, IsDescendantOf DOMHTMLQuoteElement o) => DOMHTMLQuoteElementK o
+
+toDOMHTMLQuoteElement :: DOMHTMLQuoteElementK o => o -> IO DOMHTMLQuoteElement
+toDOMHTMLQuoteElement = unsafeCastTo DOMHTMLQuoteElement
+
+noDOMHTMLQuoteElement :: Maybe DOMHTMLQuoteElement
+noDOMHTMLQuoteElement = Nothing
+
+-- VVV Prop "cite"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLQuoteElementCite :: (MonadIO m, DOMHTMLQuoteElementK o) => o -> m T.Text
+getDOMHTMLQuoteElementCite obj = liftIO $ getObjectPropertyString obj "cite"
+
+setDOMHTMLQuoteElementCite :: (MonadIO m, DOMHTMLQuoteElementK o) => o -> T.Text -> m ()
+setDOMHTMLQuoteElementCite obj val = liftIO $ setObjectPropertyString obj "cite" val
+
+constructDOMHTMLQuoteElementCite :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLQuoteElementCite val = constructObjectPropertyString "cite" val
+
+data DOMHTMLQuoteElementCitePropertyInfo
+instance AttrInfo DOMHTMLQuoteElementCitePropertyInfo where
+    type AttrAllowedOps DOMHTMLQuoteElementCitePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLQuoteElementCitePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLQuoteElementCitePropertyInfo = DOMHTMLQuoteElementK
+    type AttrGetType DOMHTMLQuoteElementCitePropertyInfo = T.Text
+    type AttrLabel DOMHTMLQuoteElementCitePropertyInfo = "DOMHTMLQuoteElement::cite"
+    attrGet _ = getDOMHTMLQuoteElementCite
+    attrSet _ = setDOMHTMLQuoteElementCite
+    attrConstruct _ = constructDOMHTMLQuoteElementCite
+
+type instance AttributeList DOMHTMLQuoteElement = DOMHTMLQuoteElementAttributeList
+type DOMHTMLQuoteElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("cite", DOMHTMLQuoteElementCitePropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLQuoteElement = DOMHTMLQuoteElementSignalList
+type DOMHTMLQuoteElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLQuoteElement::get_cite
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLQuoteElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLQuoteElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_quote_element_get_cite" webkit_dom_html_quote_element_get_cite :: 
+    Ptr DOMHTMLQuoteElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLQuoteElement"
+    IO CString
+
+
+dOMHTMLQuoteElementGetCite ::
+    (MonadIO m, DOMHTMLQuoteElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLQuoteElementGetCite _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_quote_element_get_cite _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_quote_element_get_cite" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLQuoteElement::set_cite
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLQuoteElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLQuoteElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_quote_element_set_cite" webkit_dom_html_quote_element_set_cite :: 
+    Ptr DOMHTMLQuoteElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLQuoteElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLQuoteElementSetCite ::
+    (MonadIO m, DOMHTMLQuoteElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLQuoteElementSetCite _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_quote_element_set_cite _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLQuoteElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLQuoteElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLQuoteElement.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLQuoteElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLQuoteElement = DOMHTMLQuoteElement (ForeignPtr DOMHTMLQuoteElement)
+instance GObject DOMHTMLQuoteElement where
+class GObject o => DOMHTMLQuoteElementK o
+instance (GObject o, IsDescendantOf DOMHTMLQuoteElement o) => DOMHTMLQuoteElementK o
+data DOMHTMLQuoteElementCitePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLScriptElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLScriptElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLScriptElement.hs
@@ -0,0 +1,780 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLScriptElement
+    ( 
+
+-- * Exported types
+    DOMHTMLScriptElement(..)                ,
+    DOMHTMLScriptElementK                   ,
+    toDOMHTMLScriptElement                  ,
+    noDOMHTMLScriptElement                  ,
+
+
+ -- * Methods
+-- ** dOMHTMLScriptElementGetCharset
+    dOMHTMLScriptElementGetCharset          ,
+
+
+-- ** dOMHTMLScriptElementGetDefer
+    dOMHTMLScriptElementGetDefer            ,
+
+
+-- ** dOMHTMLScriptElementGetEvent
+    dOMHTMLScriptElementGetEvent            ,
+
+
+-- ** dOMHTMLScriptElementGetHtmlFor
+    dOMHTMLScriptElementGetHtmlFor          ,
+
+
+-- ** dOMHTMLScriptElementGetSrc
+    dOMHTMLScriptElementGetSrc              ,
+
+
+-- ** dOMHTMLScriptElementGetText
+    dOMHTMLScriptElementGetText             ,
+
+
+-- ** dOMHTMLScriptElementGetTypeAttr
+    dOMHTMLScriptElementGetTypeAttr         ,
+
+
+-- ** dOMHTMLScriptElementSetDefer
+    dOMHTMLScriptElementSetDefer            ,
+
+
+-- ** dOMHTMLScriptElementSetEvent
+    dOMHTMLScriptElementSetEvent            ,
+
+
+-- ** dOMHTMLScriptElementSetHtmlFor
+    dOMHTMLScriptElementSetHtmlFor          ,
+
+
+-- ** dOMHTMLScriptElementSetSrc
+    dOMHTMLScriptElementSetSrc              ,
+
+
+-- ** dOMHTMLScriptElementSetText
+    dOMHTMLScriptElementSetText             ,
+
+
+-- ** dOMHTMLScriptElementSetTypeAttr
+    dOMHTMLScriptElementSetTypeAttr         ,
+
+
+
+
+ -- * Properties
+-- ** Async
+    DOMHTMLScriptElementAsyncPropertyInfo   ,
+    constructDOMHTMLScriptElementAsync      ,
+    getDOMHTMLScriptElementAsync            ,
+    setDOMHTMLScriptElementAsync            ,
+
+
+-- ** Charset
+    DOMHTMLScriptElementCharsetPropertyInfo ,
+    constructDOMHTMLScriptElementCharset    ,
+    getDOMHTMLScriptElementCharset          ,
+    setDOMHTMLScriptElementCharset          ,
+
+
+-- ** CrossOrigin
+    DOMHTMLScriptElementCrossOriginPropertyInfo,
+    constructDOMHTMLScriptElementCrossOrigin,
+    getDOMHTMLScriptElementCrossOrigin      ,
+    setDOMHTMLScriptElementCrossOrigin      ,
+
+
+-- ** Defer
+    DOMHTMLScriptElementDeferPropertyInfo   ,
+    constructDOMHTMLScriptElementDefer      ,
+    getDOMHTMLScriptElementDefer            ,
+    setDOMHTMLScriptElementDefer            ,
+
+
+-- ** Event
+    DOMHTMLScriptElementEventPropertyInfo   ,
+    constructDOMHTMLScriptElementEvent      ,
+    getDOMHTMLScriptElementEvent            ,
+    setDOMHTMLScriptElementEvent            ,
+
+
+-- ** HtmlFor
+    DOMHTMLScriptElementHtmlForPropertyInfo ,
+    constructDOMHTMLScriptElementHtmlFor    ,
+    getDOMHTMLScriptElementHtmlFor          ,
+    setDOMHTMLScriptElementHtmlFor          ,
+
+
+-- ** Nonce
+    DOMHTMLScriptElementNoncePropertyInfo   ,
+    constructDOMHTMLScriptElementNonce      ,
+    getDOMHTMLScriptElementNonce            ,
+    setDOMHTMLScriptElementNonce            ,
+
+
+-- ** Src
+    DOMHTMLScriptElementSrcPropertyInfo     ,
+    constructDOMHTMLScriptElementSrc        ,
+    getDOMHTMLScriptElementSrc              ,
+    setDOMHTMLScriptElementSrc              ,
+
+
+-- ** Text
+    DOMHTMLScriptElementTextPropertyInfo    ,
+    constructDOMHTMLScriptElementText       ,
+    getDOMHTMLScriptElementText             ,
+    setDOMHTMLScriptElementText             ,
+
+
+-- ** Type
+    DOMHTMLScriptElementTypePropertyInfo    ,
+    constructDOMHTMLScriptElementType       ,
+    getDOMHTMLScriptElementType             ,
+    setDOMHTMLScriptElementType             ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLScriptElement = DOMHTMLScriptElement (ForeignPtr DOMHTMLScriptElement)
+foreign import ccall "webkit_dom_html_script_element_get_type"
+    c_webkit_dom_html_script_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLScriptElement = DOMHTMLScriptElementParentTypes
+type DOMHTMLScriptElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLScriptElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_script_element_get_type
+    
+
+class GObject o => DOMHTMLScriptElementK o
+instance (GObject o, IsDescendantOf DOMHTMLScriptElement o) => DOMHTMLScriptElementK o
+
+toDOMHTMLScriptElement :: DOMHTMLScriptElementK o => o -> IO DOMHTMLScriptElement
+toDOMHTMLScriptElement = unsafeCastTo DOMHTMLScriptElement
+
+noDOMHTMLScriptElement :: Maybe DOMHTMLScriptElement
+noDOMHTMLScriptElement = Nothing
+
+-- VVV Prop "async"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLScriptElementAsync :: (MonadIO m, DOMHTMLScriptElementK o) => o -> m Bool
+getDOMHTMLScriptElementAsync obj = liftIO $ getObjectPropertyBool obj "async"
+
+setDOMHTMLScriptElementAsync :: (MonadIO m, DOMHTMLScriptElementK o) => o -> Bool -> m ()
+setDOMHTMLScriptElementAsync obj val = liftIO $ setObjectPropertyBool obj "async" val
+
+constructDOMHTMLScriptElementAsync :: Bool -> IO ([Char], GValue)
+constructDOMHTMLScriptElementAsync val = constructObjectPropertyBool "async" val
+
+data DOMHTMLScriptElementAsyncPropertyInfo
+instance AttrInfo DOMHTMLScriptElementAsyncPropertyInfo where
+    type AttrAllowedOps DOMHTMLScriptElementAsyncPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLScriptElementAsyncPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLScriptElementAsyncPropertyInfo = DOMHTMLScriptElementK
+    type AttrGetType DOMHTMLScriptElementAsyncPropertyInfo = Bool
+    type AttrLabel DOMHTMLScriptElementAsyncPropertyInfo = "DOMHTMLScriptElement::async"
+    attrGet _ = getDOMHTMLScriptElementAsync
+    attrSet _ = setDOMHTMLScriptElementAsync
+    attrConstruct _ = constructDOMHTMLScriptElementAsync
+
+-- VVV Prop "charset"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLScriptElementCharset :: (MonadIO m, DOMHTMLScriptElementK o) => o -> m T.Text
+getDOMHTMLScriptElementCharset obj = liftIO $ getObjectPropertyString obj "charset"
+
+setDOMHTMLScriptElementCharset :: (MonadIO m, DOMHTMLScriptElementK o) => o -> T.Text -> m ()
+setDOMHTMLScriptElementCharset obj val = liftIO $ setObjectPropertyString obj "charset" val
+
+constructDOMHTMLScriptElementCharset :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLScriptElementCharset val = constructObjectPropertyString "charset" val
+
+data DOMHTMLScriptElementCharsetPropertyInfo
+instance AttrInfo DOMHTMLScriptElementCharsetPropertyInfo where
+    type AttrAllowedOps DOMHTMLScriptElementCharsetPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLScriptElementCharsetPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLScriptElementCharsetPropertyInfo = DOMHTMLScriptElementK
+    type AttrGetType DOMHTMLScriptElementCharsetPropertyInfo = T.Text
+    type AttrLabel DOMHTMLScriptElementCharsetPropertyInfo = "DOMHTMLScriptElement::charset"
+    attrGet _ = getDOMHTMLScriptElementCharset
+    attrSet _ = setDOMHTMLScriptElementCharset
+    attrConstruct _ = constructDOMHTMLScriptElementCharset
+
+-- VVV Prop "cross-origin"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLScriptElementCrossOrigin :: (MonadIO m, DOMHTMLScriptElementK o) => o -> m T.Text
+getDOMHTMLScriptElementCrossOrigin obj = liftIO $ getObjectPropertyString obj "cross-origin"
+
+setDOMHTMLScriptElementCrossOrigin :: (MonadIO m, DOMHTMLScriptElementK o) => o -> T.Text -> m ()
+setDOMHTMLScriptElementCrossOrigin obj val = liftIO $ setObjectPropertyString obj "cross-origin" val
+
+constructDOMHTMLScriptElementCrossOrigin :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLScriptElementCrossOrigin val = constructObjectPropertyString "cross-origin" val
+
+data DOMHTMLScriptElementCrossOriginPropertyInfo
+instance AttrInfo DOMHTMLScriptElementCrossOriginPropertyInfo where
+    type AttrAllowedOps DOMHTMLScriptElementCrossOriginPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLScriptElementCrossOriginPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLScriptElementCrossOriginPropertyInfo = DOMHTMLScriptElementK
+    type AttrGetType DOMHTMLScriptElementCrossOriginPropertyInfo = T.Text
+    type AttrLabel DOMHTMLScriptElementCrossOriginPropertyInfo = "DOMHTMLScriptElement::cross-origin"
+    attrGet _ = getDOMHTMLScriptElementCrossOrigin
+    attrSet _ = setDOMHTMLScriptElementCrossOrigin
+    attrConstruct _ = constructDOMHTMLScriptElementCrossOrigin
+
+-- VVV Prop "defer"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLScriptElementDefer :: (MonadIO m, DOMHTMLScriptElementK o) => o -> m Bool
+getDOMHTMLScriptElementDefer obj = liftIO $ getObjectPropertyBool obj "defer"
+
+setDOMHTMLScriptElementDefer :: (MonadIO m, DOMHTMLScriptElementK o) => o -> Bool -> m ()
+setDOMHTMLScriptElementDefer obj val = liftIO $ setObjectPropertyBool obj "defer" val
+
+constructDOMHTMLScriptElementDefer :: Bool -> IO ([Char], GValue)
+constructDOMHTMLScriptElementDefer val = constructObjectPropertyBool "defer" val
+
+data DOMHTMLScriptElementDeferPropertyInfo
+instance AttrInfo DOMHTMLScriptElementDeferPropertyInfo where
+    type AttrAllowedOps DOMHTMLScriptElementDeferPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLScriptElementDeferPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLScriptElementDeferPropertyInfo = DOMHTMLScriptElementK
+    type AttrGetType DOMHTMLScriptElementDeferPropertyInfo = Bool
+    type AttrLabel DOMHTMLScriptElementDeferPropertyInfo = "DOMHTMLScriptElement::defer"
+    attrGet _ = getDOMHTMLScriptElementDefer
+    attrSet _ = setDOMHTMLScriptElementDefer
+    attrConstruct _ = constructDOMHTMLScriptElementDefer
+
+-- VVV Prop "event"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLScriptElementEvent :: (MonadIO m, DOMHTMLScriptElementK o) => o -> m T.Text
+getDOMHTMLScriptElementEvent obj = liftIO $ getObjectPropertyString obj "event"
+
+setDOMHTMLScriptElementEvent :: (MonadIO m, DOMHTMLScriptElementK o) => o -> T.Text -> m ()
+setDOMHTMLScriptElementEvent obj val = liftIO $ setObjectPropertyString obj "event" val
+
+constructDOMHTMLScriptElementEvent :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLScriptElementEvent val = constructObjectPropertyString "event" val
+
+data DOMHTMLScriptElementEventPropertyInfo
+instance AttrInfo DOMHTMLScriptElementEventPropertyInfo where
+    type AttrAllowedOps DOMHTMLScriptElementEventPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLScriptElementEventPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLScriptElementEventPropertyInfo = DOMHTMLScriptElementK
+    type AttrGetType DOMHTMLScriptElementEventPropertyInfo = T.Text
+    type AttrLabel DOMHTMLScriptElementEventPropertyInfo = "DOMHTMLScriptElement::event"
+    attrGet _ = getDOMHTMLScriptElementEvent
+    attrSet _ = setDOMHTMLScriptElementEvent
+    attrConstruct _ = constructDOMHTMLScriptElementEvent
+
+-- VVV Prop "html-for"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLScriptElementHtmlFor :: (MonadIO m, DOMHTMLScriptElementK o) => o -> m T.Text
+getDOMHTMLScriptElementHtmlFor obj = liftIO $ getObjectPropertyString obj "html-for"
+
+setDOMHTMLScriptElementHtmlFor :: (MonadIO m, DOMHTMLScriptElementK o) => o -> T.Text -> m ()
+setDOMHTMLScriptElementHtmlFor obj val = liftIO $ setObjectPropertyString obj "html-for" val
+
+constructDOMHTMLScriptElementHtmlFor :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLScriptElementHtmlFor val = constructObjectPropertyString "html-for" val
+
+data DOMHTMLScriptElementHtmlForPropertyInfo
+instance AttrInfo DOMHTMLScriptElementHtmlForPropertyInfo where
+    type AttrAllowedOps DOMHTMLScriptElementHtmlForPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLScriptElementHtmlForPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLScriptElementHtmlForPropertyInfo = DOMHTMLScriptElementK
+    type AttrGetType DOMHTMLScriptElementHtmlForPropertyInfo = T.Text
+    type AttrLabel DOMHTMLScriptElementHtmlForPropertyInfo = "DOMHTMLScriptElement::html-for"
+    attrGet _ = getDOMHTMLScriptElementHtmlFor
+    attrSet _ = setDOMHTMLScriptElementHtmlFor
+    attrConstruct _ = constructDOMHTMLScriptElementHtmlFor
+
+-- VVV Prop "nonce"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLScriptElementNonce :: (MonadIO m, DOMHTMLScriptElementK o) => o -> m T.Text
+getDOMHTMLScriptElementNonce obj = liftIO $ getObjectPropertyString obj "nonce"
+
+setDOMHTMLScriptElementNonce :: (MonadIO m, DOMHTMLScriptElementK o) => o -> T.Text -> m ()
+setDOMHTMLScriptElementNonce obj val = liftIO $ setObjectPropertyString obj "nonce" val
+
+constructDOMHTMLScriptElementNonce :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLScriptElementNonce val = constructObjectPropertyString "nonce" val
+
+data DOMHTMLScriptElementNoncePropertyInfo
+instance AttrInfo DOMHTMLScriptElementNoncePropertyInfo where
+    type AttrAllowedOps DOMHTMLScriptElementNoncePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLScriptElementNoncePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLScriptElementNoncePropertyInfo = DOMHTMLScriptElementK
+    type AttrGetType DOMHTMLScriptElementNoncePropertyInfo = T.Text
+    type AttrLabel DOMHTMLScriptElementNoncePropertyInfo = "DOMHTMLScriptElement::nonce"
+    attrGet _ = getDOMHTMLScriptElementNonce
+    attrSet _ = setDOMHTMLScriptElementNonce
+    attrConstruct _ = constructDOMHTMLScriptElementNonce
+
+-- VVV Prop "src"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLScriptElementSrc :: (MonadIO m, DOMHTMLScriptElementK o) => o -> m T.Text
+getDOMHTMLScriptElementSrc obj = liftIO $ getObjectPropertyString obj "src"
+
+setDOMHTMLScriptElementSrc :: (MonadIO m, DOMHTMLScriptElementK o) => o -> T.Text -> m ()
+setDOMHTMLScriptElementSrc obj val = liftIO $ setObjectPropertyString obj "src" val
+
+constructDOMHTMLScriptElementSrc :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLScriptElementSrc val = constructObjectPropertyString "src" val
+
+data DOMHTMLScriptElementSrcPropertyInfo
+instance AttrInfo DOMHTMLScriptElementSrcPropertyInfo where
+    type AttrAllowedOps DOMHTMLScriptElementSrcPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLScriptElementSrcPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLScriptElementSrcPropertyInfo = DOMHTMLScriptElementK
+    type AttrGetType DOMHTMLScriptElementSrcPropertyInfo = T.Text
+    type AttrLabel DOMHTMLScriptElementSrcPropertyInfo = "DOMHTMLScriptElement::src"
+    attrGet _ = getDOMHTMLScriptElementSrc
+    attrSet _ = setDOMHTMLScriptElementSrc
+    attrConstruct _ = constructDOMHTMLScriptElementSrc
+
+-- VVV Prop "text"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLScriptElementText :: (MonadIO m, DOMHTMLScriptElementK o) => o -> m T.Text
+getDOMHTMLScriptElementText obj = liftIO $ getObjectPropertyString obj "text"
+
+setDOMHTMLScriptElementText :: (MonadIO m, DOMHTMLScriptElementK o) => o -> T.Text -> m ()
+setDOMHTMLScriptElementText obj val = liftIO $ setObjectPropertyString obj "text" val
+
+constructDOMHTMLScriptElementText :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLScriptElementText val = constructObjectPropertyString "text" val
+
+data DOMHTMLScriptElementTextPropertyInfo
+instance AttrInfo DOMHTMLScriptElementTextPropertyInfo where
+    type AttrAllowedOps DOMHTMLScriptElementTextPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLScriptElementTextPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLScriptElementTextPropertyInfo = DOMHTMLScriptElementK
+    type AttrGetType DOMHTMLScriptElementTextPropertyInfo = T.Text
+    type AttrLabel DOMHTMLScriptElementTextPropertyInfo = "DOMHTMLScriptElement::text"
+    attrGet _ = getDOMHTMLScriptElementText
+    attrSet _ = setDOMHTMLScriptElementText
+    attrConstruct _ = constructDOMHTMLScriptElementText
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLScriptElementType :: (MonadIO m, DOMHTMLScriptElementK o) => o -> m T.Text
+getDOMHTMLScriptElementType obj = liftIO $ getObjectPropertyString obj "type"
+
+setDOMHTMLScriptElementType :: (MonadIO m, DOMHTMLScriptElementK o) => o -> T.Text -> m ()
+setDOMHTMLScriptElementType obj val = liftIO $ setObjectPropertyString obj "type" val
+
+constructDOMHTMLScriptElementType :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLScriptElementType val = constructObjectPropertyString "type" val
+
+data DOMHTMLScriptElementTypePropertyInfo
+instance AttrInfo DOMHTMLScriptElementTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLScriptElementTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLScriptElementTypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLScriptElementTypePropertyInfo = DOMHTMLScriptElementK
+    type AttrGetType DOMHTMLScriptElementTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLScriptElementTypePropertyInfo = "DOMHTMLScriptElement::type"
+    attrGet _ = getDOMHTMLScriptElementType
+    attrSet _ = setDOMHTMLScriptElementType
+    attrConstruct _ = constructDOMHTMLScriptElementType
+
+type instance AttributeList DOMHTMLScriptElement = DOMHTMLScriptElementAttributeList
+type DOMHTMLScriptElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("async", DOMHTMLScriptElementAsyncPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("charset", DOMHTMLScriptElementCharsetPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("cross-origin", DOMHTMLScriptElementCrossOriginPropertyInfo), '("defer", DOMHTMLScriptElementDeferPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("event", DOMHTMLScriptElementEventPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("html-for", DOMHTMLScriptElementHtmlForPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("nonce", DOMHTMLScriptElementNoncePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("src", DOMHTMLScriptElementSrcPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text", DOMHTMLScriptElementTextPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLScriptElementTypePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLScriptElement = DOMHTMLScriptElementSignalList
+type DOMHTMLScriptElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLScriptElement::get_charset
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_script_element_get_charset" webkit_dom_html_script_element_get_charset :: 
+    Ptr DOMHTMLScriptElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLScriptElement"
+    IO CString
+
+
+dOMHTMLScriptElementGetCharset ::
+    (MonadIO m, DOMHTMLScriptElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLScriptElementGetCharset _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_script_element_get_charset _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_script_element_get_charset" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLScriptElement::get_defer
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_script_element_get_defer" webkit_dom_html_script_element_get_defer :: 
+    Ptr DOMHTMLScriptElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLScriptElement"
+    IO CInt
+
+
+dOMHTMLScriptElementGetDefer ::
+    (MonadIO m, DOMHTMLScriptElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLScriptElementGetDefer _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_script_element_get_defer _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLScriptElement::get_event
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_script_element_get_event" webkit_dom_html_script_element_get_event :: 
+    Ptr DOMHTMLScriptElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLScriptElement"
+    IO CString
+
+
+dOMHTMLScriptElementGetEvent ::
+    (MonadIO m, DOMHTMLScriptElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLScriptElementGetEvent _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_script_element_get_event _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_script_element_get_event" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLScriptElement::get_html_for
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_script_element_get_html_for" webkit_dom_html_script_element_get_html_for :: 
+    Ptr DOMHTMLScriptElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLScriptElement"
+    IO CString
+
+
+dOMHTMLScriptElementGetHtmlFor ::
+    (MonadIO m, DOMHTMLScriptElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLScriptElementGetHtmlFor _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_script_element_get_html_for _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_script_element_get_html_for" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLScriptElement::get_src
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_script_element_get_src" webkit_dom_html_script_element_get_src :: 
+    Ptr DOMHTMLScriptElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLScriptElement"
+    IO CString
+
+
+dOMHTMLScriptElementGetSrc ::
+    (MonadIO m, DOMHTMLScriptElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLScriptElementGetSrc _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_script_element_get_src _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_script_element_get_src" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLScriptElement::get_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_script_element_get_text" webkit_dom_html_script_element_get_text :: 
+    Ptr DOMHTMLScriptElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLScriptElement"
+    IO CString
+
+
+dOMHTMLScriptElementGetText ::
+    (MonadIO m, DOMHTMLScriptElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLScriptElementGetText _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_script_element_get_text _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_script_element_get_text" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLScriptElement::get_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_script_element_get_type_attr" webkit_dom_html_script_element_get_type_attr :: 
+    Ptr DOMHTMLScriptElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLScriptElement"
+    IO CString
+
+
+dOMHTMLScriptElementGetTypeAttr ::
+    (MonadIO m, DOMHTMLScriptElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLScriptElementGetTypeAttr _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_script_element_get_type_attr _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_script_element_get_type_attr" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLScriptElement::set_defer
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_script_element_set_defer" webkit_dom_html_script_element_set_defer :: 
+    Ptr DOMHTMLScriptElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLScriptElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLScriptElementSetDefer ::
+    (MonadIO m, DOMHTMLScriptElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLScriptElementSetDefer _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_script_element_set_defer _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLScriptElement::set_event
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_script_element_set_event" webkit_dom_html_script_element_set_event :: 
+    Ptr DOMHTMLScriptElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLScriptElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLScriptElementSetEvent ::
+    (MonadIO m, DOMHTMLScriptElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLScriptElementSetEvent _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_script_element_set_event _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLScriptElement::set_html_for
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_script_element_set_html_for" webkit_dom_html_script_element_set_html_for :: 
+    Ptr DOMHTMLScriptElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLScriptElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLScriptElementSetHtmlFor ::
+    (MonadIO m, DOMHTMLScriptElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLScriptElementSetHtmlFor _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_script_element_set_html_for _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLScriptElement::set_src
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_script_element_set_src" webkit_dom_html_script_element_set_src :: 
+    Ptr DOMHTMLScriptElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLScriptElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLScriptElementSetSrc ::
+    (MonadIO m, DOMHTMLScriptElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLScriptElementSetSrc _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_script_element_set_src _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLScriptElement::set_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_script_element_set_text" webkit_dom_html_script_element_set_text :: 
+    Ptr DOMHTMLScriptElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLScriptElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLScriptElementSetText ::
+    (MonadIO m, DOMHTMLScriptElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLScriptElementSetText _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_script_element_set_text _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLScriptElement::set_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLScriptElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_script_element_set_type_attr" webkit_dom_html_script_element_set_type_attr :: 
+    Ptr DOMHTMLScriptElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLScriptElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLScriptElementSetTypeAttr ::
+    (MonadIO m, DOMHTMLScriptElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLScriptElementSetTypeAttr _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_script_element_set_type_attr _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLScriptElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLScriptElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLScriptElement.hs-boot
@@ -0,0 +1,23 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLScriptElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLScriptElement = DOMHTMLScriptElement (ForeignPtr DOMHTMLScriptElement)
+instance GObject DOMHTMLScriptElement where
+class GObject o => DOMHTMLScriptElementK o
+instance (GObject o, IsDescendantOf DOMHTMLScriptElement o) => DOMHTMLScriptElementK o
+data DOMHTMLScriptElementAsyncPropertyInfo
+data DOMHTMLScriptElementCharsetPropertyInfo
+data DOMHTMLScriptElementCrossOriginPropertyInfo
+data DOMHTMLScriptElementDeferPropertyInfo
+data DOMHTMLScriptElementEventPropertyInfo
+data DOMHTMLScriptElementHtmlForPropertyInfo
+data DOMHTMLScriptElementNoncePropertyInfo
+data DOMHTMLScriptElementSrcPropertyInfo
+data DOMHTMLScriptElementTextPropertyInfo
+data DOMHTMLScriptElementTypePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLSelectElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLSelectElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLSelectElement.hs
@@ -0,0 +1,1246 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement
+    ( 
+
+-- * Exported types
+    DOMHTMLSelectElement(..)                ,
+    DOMHTMLSelectElementK                   ,
+    toDOMHTMLSelectElement                  ,
+    noDOMHTMLSelectElement                  ,
+
+
+ -- * Methods
+-- ** dOMHTMLSelectElementAdd
+    dOMHTMLSelectElementAdd                 ,
+
+
+-- ** dOMHTMLSelectElementGetAutofocus
+    dOMHTMLSelectElementGetAutofocus        ,
+
+
+-- ** dOMHTMLSelectElementGetDisabled
+    dOMHTMLSelectElementGetDisabled         ,
+
+
+-- ** dOMHTMLSelectElementGetForm
+    dOMHTMLSelectElementGetForm             ,
+
+
+-- ** dOMHTMLSelectElementGetLength
+    dOMHTMLSelectElementGetLength           ,
+
+
+-- ** dOMHTMLSelectElementGetMultiple
+    dOMHTMLSelectElementGetMultiple         ,
+
+
+-- ** dOMHTMLSelectElementGetName
+    dOMHTMLSelectElementGetName             ,
+
+
+-- ** dOMHTMLSelectElementGetOptions
+    dOMHTMLSelectElementGetOptions          ,
+
+
+-- ** dOMHTMLSelectElementGetSelectType
+    dOMHTMLSelectElementGetSelectType       ,
+
+
+-- ** dOMHTMLSelectElementGetSelectedIndex
+    dOMHTMLSelectElementGetSelectedIndex    ,
+
+
+-- ** dOMHTMLSelectElementGetSize
+    dOMHTMLSelectElementGetSize             ,
+
+
+-- ** dOMHTMLSelectElementGetValue
+    dOMHTMLSelectElementGetValue            ,
+
+
+-- ** dOMHTMLSelectElementGetWillValidate
+    dOMHTMLSelectElementGetWillValidate     ,
+
+
+-- ** dOMHTMLSelectElementItem
+    dOMHTMLSelectElementItem                ,
+
+
+-- ** dOMHTMLSelectElementNamedItem
+    dOMHTMLSelectElementNamedItem           ,
+
+
+-- ** dOMHTMLSelectElementRemove
+    dOMHTMLSelectElementRemove              ,
+
+
+-- ** dOMHTMLSelectElementSetAutofocus
+    dOMHTMLSelectElementSetAutofocus        ,
+
+
+-- ** dOMHTMLSelectElementSetDisabled
+    dOMHTMLSelectElementSetDisabled         ,
+
+
+-- ** dOMHTMLSelectElementSetLength
+    dOMHTMLSelectElementSetLength           ,
+
+
+-- ** dOMHTMLSelectElementSetMultiple
+    dOMHTMLSelectElementSetMultiple         ,
+
+
+-- ** dOMHTMLSelectElementSetName
+    dOMHTMLSelectElementSetName             ,
+
+
+-- ** dOMHTMLSelectElementSetSelectedIndex
+    dOMHTMLSelectElementSetSelectedIndex    ,
+
+
+-- ** dOMHTMLSelectElementSetSize
+    dOMHTMLSelectElementSetSize             ,
+
+
+-- ** dOMHTMLSelectElementSetValue
+    dOMHTMLSelectElementSetValue            ,
+
+
+
+
+ -- * Properties
+-- ** Autofocus
+    DOMHTMLSelectElementAutofocusPropertyInfo,
+    constructDOMHTMLSelectElementAutofocus  ,
+    getDOMHTMLSelectElementAutofocus        ,
+    setDOMHTMLSelectElementAutofocus        ,
+
+
+-- ** Disabled
+    DOMHTMLSelectElementDisabledPropertyInfo,
+    constructDOMHTMLSelectElementDisabled   ,
+    getDOMHTMLSelectElementDisabled         ,
+    setDOMHTMLSelectElementDisabled         ,
+
+
+-- ** Form
+    DOMHTMLSelectElementFormPropertyInfo    ,
+    getDOMHTMLSelectElementForm             ,
+
+
+-- ** Labels
+    DOMHTMLSelectElementLabelsPropertyInfo  ,
+    getDOMHTMLSelectElementLabels           ,
+
+
+-- ** Length
+    DOMHTMLSelectElementLengthPropertyInfo  ,
+    constructDOMHTMLSelectElementLength     ,
+    getDOMHTMLSelectElementLength           ,
+    setDOMHTMLSelectElementLength           ,
+
+
+-- ** Multiple
+    DOMHTMLSelectElementMultiplePropertyInfo,
+    constructDOMHTMLSelectElementMultiple   ,
+    getDOMHTMLSelectElementMultiple         ,
+    setDOMHTMLSelectElementMultiple         ,
+
+
+-- ** Name
+    DOMHTMLSelectElementNamePropertyInfo    ,
+    constructDOMHTMLSelectElementName       ,
+    getDOMHTMLSelectElementName             ,
+    setDOMHTMLSelectElementName             ,
+
+
+-- ** Options
+    DOMHTMLSelectElementOptionsPropertyInfo ,
+    getDOMHTMLSelectElementOptions          ,
+
+
+-- ** Required
+    DOMHTMLSelectElementRequiredPropertyInfo,
+    constructDOMHTMLSelectElementRequired   ,
+    getDOMHTMLSelectElementRequired         ,
+    setDOMHTMLSelectElementRequired         ,
+
+
+-- ** SelectedIndex
+    DOMHTMLSelectElementSelectedIndexPropertyInfo,
+    constructDOMHTMLSelectElementSelectedIndex,
+    getDOMHTMLSelectElementSelectedIndex    ,
+    setDOMHTMLSelectElementSelectedIndex    ,
+
+
+-- ** SelectedOptions
+    DOMHTMLSelectElementSelectedOptionsPropertyInfo,
+    getDOMHTMLSelectElementSelectedOptions  ,
+
+
+-- ** Size
+    DOMHTMLSelectElementSizePropertyInfo    ,
+    constructDOMHTMLSelectElementSize       ,
+    getDOMHTMLSelectElementSize             ,
+    setDOMHTMLSelectElementSize             ,
+
+
+-- ** Type
+    DOMHTMLSelectElementTypePropertyInfo    ,
+    getDOMHTMLSelectElementType             ,
+
+
+-- ** ValidationMessage
+    DOMHTMLSelectElementValidationMessagePropertyInfo,
+    getDOMHTMLSelectElementValidationMessage,
+
+
+-- ** Value
+    DOMHTMLSelectElementValuePropertyInfo   ,
+    constructDOMHTMLSelectElementValue      ,
+    getDOMHTMLSelectElementValue            ,
+    setDOMHTMLSelectElementValue            ,
+
+
+-- ** WillValidate
+    DOMHTMLSelectElementWillValidatePropertyInfo,
+    getDOMHTMLSelectElementWillValidate     ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLSelectElement = DOMHTMLSelectElement (ForeignPtr DOMHTMLSelectElement)
+foreign import ccall "webkit_dom_html_select_element_get_type"
+    c_webkit_dom_html_select_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLSelectElement = DOMHTMLSelectElementParentTypes
+type DOMHTMLSelectElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLSelectElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_select_element_get_type
+    
+
+class GObject o => DOMHTMLSelectElementK o
+instance (GObject o, IsDescendantOf DOMHTMLSelectElement o) => DOMHTMLSelectElementK o
+
+toDOMHTMLSelectElement :: DOMHTMLSelectElementK o => o -> IO DOMHTMLSelectElement
+toDOMHTMLSelectElement = unsafeCastTo DOMHTMLSelectElement
+
+noDOMHTMLSelectElement :: Maybe DOMHTMLSelectElement
+noDOMHTMLSelectElement = Nothing
+
+-- VVV Prop "autofocus"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLSelectElementAutofocus :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m Bool
+getDOMHTMLSelectElementAutofocus obj = liftIO $ getObjectPropertyBool obj "autofocus"
+
+setDOMHTMLSelectElementAutofocus :: (MonadIO m, DOMHTMLSelectElementK o) => o -> Bool -> m ()
+setDOMHTMLSelectElementAutofocus obj val = liftIO $ setObjectPropertyBool obj "autofocus" val
+
+constructDOMHTMLSelectElementAutofocus :: Bool -> IO ([Char], GValue)
+constructDOMHTMLSelectElementAutofocus val = constructObjectPropertyBool "autofocus" val
+
+data DOMHTMLSelectElementAutofocusPropertyInfo
+instance AttrInfo DOMHTMLSelectElementAutofocusPropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementAutofocusPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementAutofocusPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLSelectElementAutofocusPropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementAutofocusPropertyInfo = Bool
+    type AttrLabel DOMHTMLSelectElementAutofocusPropertyInfo = "DOMHTMLSelectElement::autofocus"
+    attrGet _ = getDOMHTMLSelectElementAutofocus
+    attrSet _ = setDOMHTMLSelectElementAutofocus
+    attrConstruct _ = constructDOMHTMLSelectElementAutofocus
+
+-- VVV Prop "disabled"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLSelectElementDisabled :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m Bool
+getDOMHTMLSelectElementDisabled obj = liftIO $ getObjectPropertyBool obj "disabled"
+
+setDOMHTMLSelectElementDisabled :: (MonadIO m, DOMHTMLSelectElementK o) => o -> Bool -> m ()
+setDOMHTMLSelectElementDisabled obj val = liftIO $ setObjectPropertyBool obj "disabled" val
+
+constructDOMHTMLSelectElementDisabled :: Bool -> IO ([Char], GValue)
+constructDOMHTMLSelectElementDisabled val = constructObjectPropertyBool "disabled" val
+
+data DOMHTMLSelectElementDisabledPropertyInfo
+instance AttrInfo DOMHTMLSelectElementDisabledPropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementDisabledPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementDisabledPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLSelectElementDisabledPropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementDisabledPropertyInfo = Bool
+    type AttrLabel DOMHTMLSelectElementDisabledPropertyInfo = "DOMHTMLSelectElement::disabled"
+    attrGet _ = getDOMHTMLSelectElementDisabled
+    attrSet _ = setDOMHTMLSelectElementDisabled
+    attrConstruct _ = constructDOMHTMLSelectElementDisabled
+
+-- VVV Prop "form"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLSelectElementForm :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m DOMHTMLFormElement
+getDOMHTMLSelectElementForm obj = liftIO $ getObjectPropertyObject obj "form" DOMHTMLFormElement
+
+data DOMHTMLSelectElementFormPropertyInfo
+instance AttrInfo DOMHTMLSelectElementFormPropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementFormPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementFormPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLSelectElementFormPropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementFormPropertyInfo = DOMHTMLFormElement
+    type AttrLabel DOMHTMLSelectElementFormPropertyInfo = "DOMHTMLSelectElement::form"
+    attrGet _ = getDOMHTMLSelectElementForm
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "labels"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNodeList"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLSelectElementLabels :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m DOMNodeList
+getDOMHTMLSelectElementLabels obj = liftIO $ getObjectPropertyObject obj "labels" DOMNodeList
+
+data DOMHTMLSelectElementLabelsPropertyInfo
+instance AttrInfo DOMHTMLSelectElementLabelsPropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementLabelsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementLabelsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLSelectElementLabelsPropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementLabelsPropertyInfo = DOMNodeList
+    type AttrLabel DOMHTMLSelectElementLabelsPropertyInfo = "DOMHTMLSelectElement::labels"
+    attrGet _ = getDOMHTMLSelectElementLabels
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "length"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLSelectElementLength :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m Word64
+getDOMHTMLSelectElementLength obj = liftIO $ getObjectPropertyUInt64 obj "length"
+
+setDOMHTMLSelectElementLength :: (MonadIO m, DOMHTMLSelectElementK o) => o -> Word64 -> m ()
+setDOMHTMLSelectElementLength obj val = liftIO $ setObjectPropertyUInt64 obj "length" val
+
+constructDOMHTMLSelectElementLength :: Word64 -> IO ([Char], GValue)
+constructDOMHTMLSelectElementLength val = constructObjectPropertyUInt64 "length" val
+
+data DOMHTMLSelectElementLengthPropertyInfo
+instance AttrInfo DOMHTMLSelectElementLengthPropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementLengthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementLengthPropertyInfo = (~) Word64
+    type AttrBaseTypeConstraint DOMHTMLSelectElementLengthPropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementLengthPropertyInfo = Word64
+    type AttrLabel DOMHTMLSelectElementLengthPropertyInfo = "DOMHTMLSelectElement::length"
+    attrGet _ = getDOMHTMLSelectElementLength
+    attrSet _ = setDOMHTMLSelectElementLength
+    attrConstruct _ = constructDOMHTMLSelectElementLength
+
+-- VVV Prop "multiple"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLSelectElementMultiple :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m Bool
+getDOMHTMLSelectElementMultiple obj = liftIO $ getObjectPropertyBool obj "multiple"
+
+setDOMHTMLSelectElementMultiple :: (MonadIO m, DOMHTMLSelectElementK o) => o -> Bool -> m ()
+setDOMHTMLSelectElementMultiple obj val = liftIO $ setObjectPropertyBool obj "multiple" val
+
+constructDOMHTMLSelectElementMultiple :: Bool -> IO ([Char], GValue)
+constructDOMHTMLSelectElementMultiple val = constructObjectPropertyBool "multiple" val
+
+data DOMHTMLSelectElementMultiplePropertyInfo
+instance AttrInfo DOMHTMLSelectElementMultiplePropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementMultiplePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementMultiplePropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLSelectElementMultiplePropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementMultiplePropertyInfo = Bool
+    type AttrLabel DOMHTMLSelectElementMultiplePropertyInfo = "DOMHTMLSelectElement::multiple"
+    attrGet _ = getDOMHTMLSelectElementMultiple
+    attrSet _ = setDOMHTMLSelectElementMultiple
+    attrConstruct _ = constructDOMHTMLSelectElementMultiple
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLSelectElementName :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m T.Text
+getDOMHTMLSelectElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLSelectElementName :: (MonadIO m, DOMHTMLSelectElementK o) => o -> T.Text -> m ()
+setDOMHTMLSelectElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLSelectElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLSelectElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLSelectElementNamePropertyInfo
+instance AttrInfo DOMHTMLSelectElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLSelectElementNamePropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLSelectElementNamePropertyInfo = "DOMHTMLSelectElement::name"
+    attrGet _ = getDOMHTMLSelectElementName
+    attrSet _ = setDOMHTMLSelectElementName
+    attrConstruct _ = constructDOMHTMLSelectElementName
+
+-- VVV Prop "options"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLOptionsCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLSelectElementOptions :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m DOMHTMLOptionsCollection
+getDOMHTMLSelectElementOptions obj = liftIO $ getObjectPropertyObject obj "options" DOMHTMLOptionsCollection
+
+data DOMHTMLSelectElementOptionsPropertyInfo
+instance AttrInfo DOMHTMLSelectElementOptionsPropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementOptionsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementOptionsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLSelectElementOptionsPropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementOptionsPropertyInfo = DOMHTMLOptionsCollection
+    type AttrLabel DOMHTMLSelectElementOptionsPropertyInfo = "DOMHTMLSelectElement::options"
+    attrGet _ = getDOMHTMLSelectElementOptions
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "required"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLSelectElementRequired :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m Bool
+getDOMHTMLSelectElementRequired obj = liftIO $ getObjectPropertyBool obj "required"
+
+setDOMHTMLSelectElementRequired :: (MonadIO m, DOMHTMLSelectElementK o) => o -> Bool -> m ()
+setDOMHTMLSelectElementRequired obj val = liftIO $ setObjectPropertyBool obj "required" val
+
+constructDOMHTMLSelectElementRequired :: Bool -> IO ([Char], GValue)
+constructDOMHTMLSelectElementRequired val = constructObjectPropertyBool "required" val
+
+data DOMHTMLSelectElementRequiredPropertyInfo
+instance AttrInfo DOMHTMLSelectElementRequiredPropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementRequiredPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementRequiredPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLSelectElementRequiredPropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementRequiredPropertyInfo = Bool
+    type AttrLabel DOMHTMLSelectElementRequiredPropertyInfo = "DOMHTMLSelectElement::required"
+    attrGet _ = getDOMHTMLSelectElementRequired
+    attrSet _ = setDOMHTMLSelectElementRequired
+    attrConstruct _ = constructDOMHTMLSelectElementRequired
+
+-- VVV Prop "selected-index"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLSelectElementSelectedIndex :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m Int64
+getDOMHTMLSelectElementSelectedIndex obj = liftIO $ getObjectPropertyInt64 obj "selected-index"
+
+setDOMHTMLSelectElementSelectedIndex :: (MonadIO m, DOMHTMLSelectElementK o) => o -> Int64 -> m ()
+setDOMHTMLSelectElementSelectedIndex obj val = liftIO $ setObjectPropertyInt64 obj "selected-index" val
+
+constructDOMHTMLSelectElementSelectedIndex :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLSelectElementSelectedIndex val = constructObjectPropertyInt64 "selected-index" val
+
+data DOMHTMLSelectElementSelectedIndexPropertyInfo
+instance AttrInfo DOMHTMLSelectElementSelectedIndexPropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementSelectedIndexPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementSelectedIndexPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLSelectElementSelectedIndexPropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementSelectedIndexPropertyInfo = Int64
+    type AttrLabel DOMHTMLSelectElementSelectedIndexPropertyInfo = "DOMHTMLSelectElement::selected-index"
+    attrGet _ = getDOMHTMLSelectElementSelectedIndex
+    attrSet _ = setDOMHTMLSelectElementSelectedIndex
+    attrConstruct _ = constructDOMHTMLSelectElementSelectedIndex
+
+-- VVV Prop "selected-options"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLSelectElementSelectedOptions :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m DOMHTMLCollection
+getDOMHTMLSelectElementSelectedOptions obj = liftIO $ getObjectPropertyObject obj "selected-options" DOMHTMLCollection
+
+data DOMHTMLSelectElementSelectedOptionsPropertyInfo
+instance AttrInfo DOMHTMLSelectElementSelectedOptionsPropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementSelectedOptionsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementSelectedOptionsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLSelectElementSelectedOptionsPropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementSelectedOptionsPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMHTMLSelectElementSelectedOptionsPropertyInfo = "DOMHTMLSelectElement::selected-options"
+    attrGet _ = getDOMHTMLSelectElementSelectedOptions
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "size"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLSelectElementSize :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m Int64
+getDOMHTMLSelectElementSize obj = liftIO $ getObjectPropertyInt64 obj "size"
+
+setDOMHTMLSelectElementSize :: (MonadIO m, DOMHTMLSelectElementK o) => o -> Int64 -> m ()
+setDOMHTMLSelectElementSize obj val = liftIO $ setObjectPropertyInt64 obj "size" val
+
+constructDOMHTMLSelectElementSize :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLSelectElementSize val = constructObjectPropertyInt64 "size" val
+
+data DOMHTMLSelectElementSizePropertyInfo
+instance AttrInfo DOMHTMLSelectElementSizePropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementSizePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementSizePropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLSelectElementSizePropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementSizePropertyInfo = Int64
+    type AttrLabel DOMHTMLSelectElementSizePropertyInfo = "DOMHTMLSelectElement::size"
+    attrGet _ = getDOMHTMLSelectElementSize
+    attrSet _ = setDOMHTMLSelectElementSize
+    attrConstruct _ = constructDOMHTMLSelectElementSize
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLSelectElementType :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m T.Text
+getDOMHTMLSelectElementType obj = liftIO $ getObjectPropertyString obj "type"
+
+data DOMHTMLSelectElementTypePropertyInfo
+instance AttrInfo DOMHTMLSelectElementTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementTypePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementTypePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLSelectElementTypePropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLSelectElementTypePropertyInfo = "DOMHTMLSelectElement::type"
+    attrGet _ = getDOMHTMLSelectElementType
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "validation-message"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLSelectElementValidationMessage :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m T.Text
+getDOMHTMLSelectElementValidationMessage obj = liftIO $ getObjectPropertyString obj "validation-message"
+
+data DOMHTMLSelectElementValidationMessagePropertyInfo
+instance AttrInfo DOMHTMLSelectElementValidationMessagePropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementValidationMessagePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementValidationMessagePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLSelectElementValidationMessagePropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementValidationMessagePropertyInfo = T.Text
+    type AttrLabel DOMHTMLSelectElementValidationMessagePropertyInfo = "DOMHTMLSelectElement::validation-message"
+    attrGet _ = getDOMHTMLSelectElementValidationMessage
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "value"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLSelectElementValue :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m T.Text
+getDOMHTMLSelectElementValue obj = liftIO $ getObjectPropertyString obj "value"
+
+setDOMHTMLSelectElementValue :: (MonadIO m, DOMHTMLSelectElementK o) => o -> T.Text -> m ()
+setDOMHTMLSelectElementValue obj val = liftIO $ setObjectPropertyString obj "value" val
+
+constructDOMHTMLSelectElementValue :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLSelectElementValue val = constructObjectPropertyString "value" val
+
+data DOMHTMLSelectElementValuePropertyInfo
+instance AttrInfo DOMHTMLSelectElementValuePropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementValuePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementValuePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLSelectElementValuePropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementValuePropertyInfo = T.Text
+    type AttrLabel DOMHTMLSelectElementValuePropertyInfo = "DOMHTMLSelectElement::value"
+    attrGet _ = getDOMHTMLSelectElementValue
+    attrSet _ = setDOMHTMLSelectElementValue
+    attrConstruct _ = constructDOMHTMLSelectElementValue
+
+-- VVV Prop "will-validate"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLSelectElementWillValidate :: (MonadIO m, DOMHTMLSelectElementK o) => o -> m Bool
+getDOMHTMLSelectElementWillValidate obj = liftIO $ getObjectPropertyBool obj "will-validate"
+
+data DOMHTMLSelectElementWillValidatePropertyInfo
+instance AttrInfo DOMHTMLSelectElementWillValidatePropertyInfo where
+    type AttrAllowedOps DOMHTMLSelectElementWillValidatePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLSelectElementWillValidatePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLSelectElementWillValidatePropertyInfo = DOMHTMLSelectElementK
+    type AttrGetType DOMHTMLSelectElementWillValidatePropertyInfo = Bool
+    type AttrLabel DOMHTMLSelectElementWillValidatePropertyInfo = "DOMHTMLSelectElement::will-validate"
+    attrGet _ = getDOMHTMLSelectElementWillValidate
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMHTMLSelectElement = DOMHTMLSelectElementAttributeList
+type DOMHTMLSelectElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("autofocus", DOMHTMLSelectElementAutofocusPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("disabled", DOMHTMLSelectElementDisabledPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("form", DOMHTMLSelectElementFormPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("labels", DOMHTMLSelectElementLabelsPropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("length", DOMHTMLSelectElementLengthPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("multiple", DOMHTMLSelectElementMultiplePropertyInfo), '("name", DOMHTMLSelectElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("options", DOMHTMLSelectElementOptionsPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("required", DOMHTMLSelectElementRequiredPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("selected-index", DOMHTMLSelectElementSelectedIndexPropertyInfo), '("selected-options", DOMHTMLSelectElementSelectedOptionsPropertyInfo), '("size", DOMHTMLSelectElementSizePropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLSelectElementTypePropertyInfo), '("validation-message", DOMHTMLSelectElementValidationMessagePropertyInfo), '("value", DOMHTMLSelectElementValuePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("will-validate", DOMHTMLSelectElementWillValidatePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLSelectElement = DOMHTMLSelectElementSignalList
+type DOMHTMLSelectElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLSelectElement::add
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "element", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "before", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "element", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "before", argType = TInterface "WebKit2WebExtension" "DOMHTMLElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_add" webkit_dom_html_select_element_add :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    Ptr DOMHTMLElement ->                   -- element : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    Ptr DOMHTMLElement ->                   -- before : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMHTMLSelectElementAdd ::
+    (MonadIO m, DOMHTMLSelectElementK a, DOMHTMLElementK b, DOMHTMLElementK c) =>
+    a ->                                    -- _obj
+    b ->                                    -- element
+    c ->                                    -- before
+    m ()
+dOMHTMLSelectElementAdd _obj element before = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let element' = unsafeManagedPtrCastPtr element
+    let before' = unsafeManagedPtrCastPtr before
+    onException (do
+        propagateGError $ webkit_dom_html_select_element_add _obj' element' before'
+        touchManagedPtr _obj
+        touchManagedPtr element
+        touchManagedPtr before
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMHTMLSelectElement::get_autofocus
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_get_autofocus" webkit_dom_html_select_element_get_autofocus :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    IO CInt
+
+
+dOMHTMLSelectElementGetAutofocus ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLSelectElementGetAutofocus _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_select_element_get_autofocus _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLSelectElement::get_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_get_disabled" webkit_dom_html_select_element_get_disabled :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    IO CInt
+
+
+dOMHTMLSelectElementGetDisabled ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLSelectElementGetDisabled _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_select_element_get_disabled _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLSelectElement::get_form
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_get_form" webkit_dom_html_select_element_get_form :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    IO (Ptr DOMHTMLFormElement)
+
+
+dOMHTMLSelectElementGetForm ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLFormElement
+dOMHTMLSelectElementGetForm _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_select_element_get_form _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_select_element_get_form" result
+    result' <- (newObject DOMHTMLFormElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLSelectElement::get_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_get_length" webkit_dom_html_select_element_get_length :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    IO Word64
+
+
+dOMHTMLSelectElementGetLength ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMHTMLSelectElementGetLength _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_select_element_get_length _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLSelectElement::get_multiple
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_get_multiple" webkit_dom_html_select_element_get_multiple :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    IO CInt
+
+
+dOMHTMLSelectElementGetMultiple ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLSelectElementGetMultiple _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_select_element_get_multiple _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLSelectElement::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_get_name" webkit_dom_html_select_element_get_name :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    IO CString
+
+
+dOMHTMLSelectElementGetName ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLSelectElementGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_select_element_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_select_element_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLSelectElement::get_options
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLOptionsCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_get_options" webkit_dom_html_select_element_get_options :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    IO (Ptr DOMHTMLOptionsCollection)
+
+
+dOMHTMLSelectElementGetOptions ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLOptionsCollection
+dOMHTMLSelectElementGetOptions _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_select_element_get_options _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_select_element_get_options" result
+    result' <- (wrapObject DOMHTMLOptionsCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLSelectElement::get_select_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_get_select_type" webkit_dom_html_select_element_get_select_type :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    IO CString
+
+
+dOMHTMLSelectElementGetSelectType ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLSelectElementGetSelectType _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_select_element_get_select_type _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_select_element_get_select_type" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLSelectElement::get_selected_index
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_get_selected_index" webkit_dom_html_select_element_get_selected_index :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    IO Int64
+
+
+dOMHTMLSelectElementGetSelectedIndex ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLSelectElementGetSelectedIndex _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_select_element_get_selected_index _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLSelectElement::get_size
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_get_size" webkit_dom_html_select_element_get_size :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    IO Int64
+
+
+dOMHTMLSelectElementGetSize ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLSelectElementGetSize _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_select_element_get_size _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLSelectElement::get_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_get_value" webkit_dom_html_select_element_get_value :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    IO CString
+
+
+dOMHTMLSelectElementGetValue ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLSelectElementGetValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_select_element_get_value _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_select_element_get_value" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLSelectElement::get_will_validate
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_get_will_validate" webkit_dom_html_select_element_get_will_validate :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    IO CInt
+
+
+dOMHTMLSelectElementGetWillValidate ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLSelectElementGetWillValidate _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_select_element_get_will_validate _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLSelectElement::item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_item" webkit_dom_html_select_element_item :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    Word64 ->                               -- index : TBasicType TUInt64
+    IO (Ptr DOMNode)
+
+
+dOMHTMLSelectElementItem ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- index
+    m DOMNode
+dOMHTMLSelectElementItem _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_select_element_item _obj' index
+    checkUnexpectedReturnNULL "webkit_dom_html_select_element_item" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLSelectElement::named_item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_named_item" webkit_dom_html_select_element_named_item :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    CString ->                              -- name : TBasicType TUTF8
+    IO (Ptr DOMNode)
+
+
+dOMHTMLSelectElementNamedItem ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- name
+    m DOMNode
+dOMHTMLSelectElementNamedItem _obj name = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    name' <- textToCString name
+    result <- webkit_dom_html_select_element_named_item _obj' name'
+    checkUnexpectedReturnNULL "webkit_dom_html_select_element_named_item" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    freeMem name'
+    return result'
+
+-- method DOMHTMLSelectElement::remove
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_remove" webkit_dom_html_select_element_remove :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    Int64 ->                                -- index : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLSelectElementRemove ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- index
+    m ()
+dOMHTMLSelectElementRemove _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_select_element_remove _obj' index
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLSelectElement::set_autofocus
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_set_autofocus" webkit_dom_html_select_element_set_autofocus :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLSelectElementSetAutofocus ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLSelectElementSetAutofocus _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_select_element_set_autofocus _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLSelectElement::set_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_set_disabled" webkit_dom_html_select_element_set_disabled :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLSelectElementSetDisabled ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLSelectElementSetDisabled _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_select_element_set_disabled _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLSelectElement::set_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_set_length" webkit_dom_html_select_element_set_length :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    Word64 ->                               -- value : TBasicType TUInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMHTMLSelectElementSetLength ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- value
+    m ()
+dOMHTMLSelectElementSetLength _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        propagateGError $ webkit_dom_html_select_element_set_length _obj' value
+        touchManagedPtr _obj
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMHTMLSelectElement::set_multiple
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_set_multiple" webkit_dom_html_select_element_set_multiple :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLSelectElementSetMultiple ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLSelectElementSetMultiple _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_select_element_set_multiple _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLSelectElement::set_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_set_name" webkit_dom_html_select_element_set_name :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLSelectElementSetName ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLSelectElementSetName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_select_element_set_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLSelectElement::set_selected_index
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_set_selected_index" webkit_dom_html_select_element_set_selected_index :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLSelectElementSetSelectedIndex ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLSelectElementSetSelectedIndex _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_select_element_set_selected_index _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLSelectElement::set_size
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_set_size" webkit_dom_html_select_element_set_size :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLSelectElementSetSize ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLSelectElementSetSize _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_select_element_set_size _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLSelectElement::set_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLSelectElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_select_element_set_value" webkit_dom_html_select_element_set_value :: 
+    Ptr DOMHTMLSelectElement ->             -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLSelectElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLSelectElementSetValue ::
+    (MonadIO m, DOMHTMLSelectElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLSelectElementSetValue _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_select_element_set_value _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLSelectElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLSelectElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLSelectElement.hs-boot
@@ -0,0 +1,29 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLSelectElement = DOMHTMLSelectElement (ForeignPtr DOMHTMLSelectElement)
+instance GObject DOMHTMLSelectElement where
+class GObject o => DOMHTMLSelectElementK o
+instance (GObject o, IsDescendantOf DOMHTMLSelectElement o) => DOMHTMLSelectElementK o
+data DOMHTMLSelectElementAutofocusPropertyInfo
+data DOMHTMLSelectElementDisabledPropertyInfo
+data DOMHTMLSelectElementFormPropertyInfo
+data DOMHTMLSelectElementLabelsPropertyInfo
+data DOMHTMLSelectElementLengthPropertyInfo
+data DOMHTMLSelectElementMultiplePropertyInfo
+data DOMHTMLSelectElementNamePropertyInfo
+data DOMHTMLSelectElementOptionsPropertyInfo
+data DOMHTMLSelectElementRequiredPropertyInfo
+data DOMHTMLSelectElementSelectedIndexPropertyInfo
+data DOMHTMLSelectElementSelectedOptionsPropertyInfo
+data DOMHTMLSelectElementSizePropertyInfo
+data DOMHTMLSelectElementTypePropertyInfo
+data DOMHTMLSelectElementValidationMessagePropertyInfo
+data DOMHTMLSelectElementValuePropertyInfo
+data DOMHTMLSelectElementWillValidatePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLStyleElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLStyleElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLStyleElement.hs
@@ -0,0 +1,396 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLStyleElement
+    ( 
+
+-- * Exported types
+    DOMHTMLStyleElement(..)                 ,
+    DOMHTMLStyleElementK                    ,
+    toDOMHTMLStyleElement                   ,
+    noDOMHTMLStyleElement                   ,
+
+
+ -- * Methods
+-- ** dOMHTMLStyleElementGetDisabled
+    dOMHTMLStyleElementGetDisabled          ,
+
+
+-- ** dOMHTMLStyleElementGetMedia
+    dOMHTMLStyleElementGetMedia             ,
+
+
+-- ** dOMHTMLStyleElementGetSheet
+    dOMHTMLStyleElementGetSheet             ,
+
+
+-- ** dOMHTMLStyleElementGetTypeAttr
+    dOMHTMLStyleElementGetTypeAttr          ,
+
+
+-- ** dOMHTMLStyleElementSetDisabled
+    dOMHTMLStyleElementSetDisabled          ,
+
+
+-- ** dOMHTMLStyleElementSetMedia
+    dOMHTMLStyleElementSetMedia             ,
+
+
+-- ** dOMHTMLStyleElementSetTypeAttr
+    dOMHTMLStyleElementSetTypeAttr          ,
+
+
+
+
+ -- * Properties
+-- ** Disabled
+    DOMHTMLStyleElementDisabledPropertyInfo ,
+    constructDOMHTMLStyleElementDisabled    ,
+    getDOMHTMLStyleElementDisabled          ,
+    setDOMHTMLStyleElementDisabled          ,
+
+
+-- ** Media
+    DOMHTMLStyleElementMediaPropertyInfo    ,
+    constructDOMHTMLStyleElementMedia       ,
+    getDOMHTMLStyleElementMedia             ,
+    setDOMHTMLStyleElementMedia             ,
+
+
+-- ** Sheet
+    DOMHTMLStyleElementSheetPropertyInfo    ,
+    getDOMHTMLStyleElementSheet             ,
+
+
+-- ** Type
+    DOMHTMLStyleElementTypePropertyInfo     ,
+    constructDOMHTMLStyleElementType        ,
+    getDOMHTMLStyleElementType              ,
+    setDOMHTMLStyleElementType              ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLStyleElement = DOMHTMLStyleElement (ForeignPtr DOMHTMLStyleElement)
+foreign import ccall "webkit_dom_html_style_element_get_type"
+    c_webkit_dom_html_style_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLStyleElement = DOMHTMLStyleElementParentTypes
+type DOMHTMLStyleElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLStyleElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_style_element_get_type
+    
+
+class GObject o => DOMHTMLStyleElementK o
+instance (GObject o, IsDescendantOf DOMHTMLStyleElement o) => DOMHTMLStyleElementK o
+
+toDOMHTMLStyleElement :: DOMHTMLStyleElementK o => o -> IO DOMHTMLStyleElement
+toDOMHTMLStyleElement = unsafeCastTo DOMHTMLStyleElement
+
+noDOMHTMLStyleElement :: Maybe DOMHTMLStyleElement
+noDOMHTMLStyleElement = Nothing
+
+-- VVV Prop "disabled"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLStyleElementDisabled :: (MonadIO m, DOMHTMLStyleElementK o) => o -> m Bool
+getDOMHTMLStyleElementDisabled obj = liftIO $ getObjectPropertyBool obj "disabled"
+
+setDOMHTMLStyleElementDisabled :: (MonadIO m, DOMHTMLStyleElementK o) => o -> Bool -> m ()
+setDOMHTMLStyleElementDisabled obj val = liftIO $ setObjectPropertyBool obj "disabled" val
+
+constructDOMHTMLStyleElementDisabled :: Bool -> IO ([Char], GValue)
+constructDOMHTMLStyleElementDisabled val = constructObjectPropertyBool "disabled" val
+
+data DOMHTMLStyleElementDisabledPropertyInfo
+instance AttrInfo DOMHTMLStyleElementDisabledPropertyInfo where
+    type AttrAllowedOps DOMHTMLStyleElementDisabledPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLStyleElementDisabledPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLStyleElementDisabledPropertyInfo = DOMHTMLStyleElementK
+    type AttrGetType DOMHTMLStyleElementDisabledPropertyInfo = Bool
+    type AttrLabel DOMHTMLStyleElementDisabledPropertyInfo = "DOMHTMLStyleElement::disabled"
+    attrGet _ = getDOMHTMLStyleElementDisabled
+    attrSet _ = setDOMHTMLStyleElementDisabled
+    attrConstruct _ = constructDOMHTMLStyleElementDisabled
+
+-- VVV Prop "media"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLStyleElementMedia :: (MonadIO m, DOMHTMLStyleElementK o) => o -> m T.Text
+getDOMHTMLStyleElementMedia obj = liftIO $ getObjectPropertyString obj "media"
+
+setDOMHTMLStyleElementMedia :: (MonadIO m, DOMHTMLStyleElementK o) => o -> T.Text -> m ()
+setDOMHTMLStyleElementMedia obj val = liftIO $ setObjectPropertyString obj "media" val
+
+constructDOMHTMLStyleElementMedia :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLStyleElementMedia val = constructObjectPropertyString "media" val
+
+data DOMHTMLStyleElementMediaPropertyInfo
+instance AttrInfo DOMHTMLStyleElementMediaPropertyInfo where
+    type AttrAllowedOps DOMHTMLStyleElementMediaPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLStyleElementMediaPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLStyleElementMediaPropertyInfo = DOMHTMLStyleElementK
+    type AttrGetType DOMHTMLStyleElementMediaPropertyInfo = T.Text
+    type AttrLabel DOMHTMLStyleElementMediaPropertyInfo = "DOMHTMLStyleElement::media"
+    attrGet _ = getDOMHTMLStyleElementMedia
+    attrSet _ = setDOMHTMLStyleElementMedia
+    attrConstruct _ = constructDOMHTMLStyleElementMedia
+
+-- VVV Prop "sheet"
+   -- Type: TInterface "WebKit2WebExtension" "DOMStyleSheet"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLStyleElementSheet :: (MonadIO m, DOMHTMLStyleElementK o) => o -> m DOMStyleSheet
+getDOMHTMLStyleElementSheet obj = liftIO $ getObjectPropertyObject obj "sheet" DOMStyleSheet
+
+data DOMHTMLStyleElementSheetPropertyInfo
+instance AttrInfo DOMHTMLStyleElementSheetPropertyInfo where
+    type AttrAllowedOps DOMHTMLStyleElementSheetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLStyleElementSheetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLStyleElementSheetPropertyInfo = DOMHTMLStyleElementK
+    type AttrGetType DOMHTMLStyleElementSheetPropertyInfo = DOMStyleSheet
+    type AttrLabel DOMHTMLStyleElementSheetPropertyInfo = "DOMHTMLStyleElement::sheet"
+    attrGet _ = getDOMHTMLStyleElementSheet
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLStyleElementType :: (MonadIO m, DOMHTMLStyleElementK o) => o -> m T.Text
+getDOMHTMLStyleElementType obj = liftIO $ getObjectPropertyString obj "type"
+
+setDOMHTMLStyleElementType :: (MonadIO m, DOMHTMLStyleElementK o) => o -> T.Text -> m ()
+setDOMHTMLStyleElementType obj val = liftIO $ setObjectPropertyString obj "type" val
+
+constructDOMHTMLStyleElementType :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLStyleElementType val = constructObjectPropertyString "type" val
+
+data DOMHTMLStyleElementTypePropertyInfo
+instance AttrInfo DOMHTMLStyleElementTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLStyleElementTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLStyleElementTypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLStyleElementTypePropertyInfo = DOMHTMLStyleElementK
+    type AttrGetType DOMHTMLStyleElementTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLStyleElementTypePropertyInfo = "DOMHTMLStyleElement::type"
+    attrGet _ = getDOMHTMLStyleElementType
+    attrSet _ = setDOMHTMLStyleElementType
+    attrConstruct _ = constructDOMHTMLStyleElementType
+
+type instance AttributeList DOMHTMLStyleElement = DOMHTMLStyleElementAttributeList
+type DOMHTMLStyleElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("disabled", DOMHTMLStyleElementDisabledPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("media", DOMHTMLStyleElementMediaPropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("sheet", DOMHTMLStyleElementSheetPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLStyleElementTypePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLStyleElement = DOMHTMLStyleElementSignalList
+type DOMHTMLStyleElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLStyleElement::get_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLStyleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLStyleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_style_element_get_disabled" webkit_dom_html_style_element_get_disabled :: 
+    Ptr DOMHTMLStyleElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLStyleElement"
+    IO CInt
+
+
+dOMHTMLStyleElementGetDisabled ::
+    (MonadIO m, DOMHTMLStyleElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLStyleElementGetDisabled _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_style_element_get_disabled _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLStyleElement::get_media
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLStyleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLStyleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_style_element_get_media" webkit_dom_html_style_element_get_media :: 
+    Ptr DOMHTMLStyleElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLStyleElement"
+    IO CString
+
+
+dOMHTMLStyleElementGetMedia ::
+    (MonadIO m, DOMHTMLStyleElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLStyleElementGetMedia _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_style_element_get_media _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_style_element_get_media" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLStyleElement::get_sheet
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLStyleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLStyleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMStyleSheet"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_style_element_get_sheet" webkit_dom_html_style_element_get_sheet :: 
+    Ptr DOMHTMLStyleElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLStyleElement"
+    IO (Ptr DOMStyleSheet)
+
+
+dOMHTMLStyleElementGetSheet ::
+    (MonadIO m, DOMHTMLStyleElementK a) =>
+    a ->                                    -- _obj
+    m DOMStyleSheet
+dOMHTMLStyleElementGetSheet _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_style_element_get_sheet _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_style_element_get_sheet" result
+    result' <- (wrapObject DOMStyleSheet) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLStyleElement::get_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLStyleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLStyleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_style_element_get_type_attr" webkit_dom_html_style_element_get_type_attr :: 
+    Ptr DOMHTMLStyleElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLStyleElement"
+    IO CString
+
+
+dOMHTMLStyleElementGetTypeAttr ::
+    (MonadIO m, DOMHTMLStyleElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLStyleElementGetTypeAttr _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_style_element_get_type_attr _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_style_element_get_type_attr" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLStyleElement::set_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLStyleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLStyleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_style_element_set_disabled" webkit_dom_html_style_element_set_disabled :: 
+    Ptr DOMHTMLStyleElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLStyleElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLStyleElementSetDisabled ::
+    (MonadIO m, DOMHTMLStyleElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLStyleElementSetDisabled _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_style_element_set_disabled _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLStyleElement::set_media
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLStyleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLStyleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_style_element_set_media" webkit_dom_html_style_element_set_media :: 
+    Ptr DOMHTMLStyleElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLStyleElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLStyleElementSetMedia ::
+    (MonadIO m, DOMHTMLStyleElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLStyleElementSetMedia _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_style_element_set_media _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLStyleElement::set_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLStyleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLStyleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_style_element_set_type_attr" webkit_dom_html_style_element_set_type_attr :: 
+    Ptr DOMHTMLStyleElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLStyleElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLStyleElementSetTypeAttr ::
+    (MonadIO m, DOMHTMLStyleElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLStyleElementSetTypeAttr _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_style_element_set_type_attr _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLStyleElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLStyleElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLStyleElement.hs-boot
@@ -0,0 +1,17 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLStyleElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLStyleElement = DOMHTMLStyleElement (ForeignPtr DOMHTMLStyleElement)
+instance GObject DOMHTMLStyleElement where
+class GObject o => DOMHTMLStyleElementK o
+instance (GObject o, IsDescendantOf DOMHTMLStyleElement o) => DOMHTMLStyleElementK o
+data DOMHTMLStyleElementDisabledPropertyInfo
+data DOMHTMLStyleElementMediaPropertyInfo
+data DOMHTMLStyleElementSheetPropertyInfo
+data DOMHTMLStyleElementTypePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTableCaptionElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLTableCaptionElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTableCaptionElement.hs
@@ -0,0 +1,158 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLTableCaptionElement
+    ( 
+
+-- * Exported types
+    DOMHTMLTableCaptionElement(..)          ,
+    DOMHTMLTableCaptionElementK             ,
+    toDOMHTMLTableCaptionElement            ,
+    noDOMHTMLTableCaptionElement            ,
+
+
+ -- * Methods
+-- ** dOMHTMLTableCaptionElementGetAlign
+    dOMHTMLTableCaptionElementGetAlign      ,
+
+
+-- ** dOMHTMLTableCaptionElementSetAlign
+    dOMHTMLTableCaptionElementSetAlign      ,
+
+
+
+
+ -- * Properties
+-- ** Align
+    DOMHTMLTableCaptionElementAlignPropertyInfo,
+    constructDOMHTMLTableCaptionElementAlign,
+    getDOMHTMLTableCaptionElementAlign      ,
+    setDOMHTMLTableCaptionElementAlign      ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLTableCaptionElement = DOMHTMLTableCaptionElement (ForeignPtr DOMHTMLTableCaptionElement)
+foreign import ccall "webkit_dom_html_table_caption_element_get_type"
+    c_webkit_dom_html_table_caption_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLTableCaptionElement = DOMHTMLTableCaptionElementParentTypes
+type DOMHTMLTableCaptionElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLTableCaptionElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_table_caption_element_get_type
+    
+
+class GObject o => DOMHTMLTableCaptionElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTableCaptionElement o) => DOMHTMLTableCaptionElementK o
+
+toDOMHTMLTableCaptionElement :: DOMHTMLTableCaptionElementK o => o -> IO DOMHTMLTableCaptionElement
+toDOMHTMLTableCaptionElement = unsafeCastTo DOMHTMLTableCaptionElement
+
+noDOMHTMLTableCaptionElement :: Maybe DOMHTMLTableCaptionElement
+noDOMHTMLTableCaptionElement = Nothing
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableCaptionElementAlign :: (MonadIO m, DOMHTMLTableCaptionElementK o) => o -> m T.Text
+getDOMHTMLTableCaptionElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLTableCaptionElementAlign :: (MonadIO m, DOMHTMLTableCaptionElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableCaptionElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLTableCaptionElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableCaptionElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLTableCaptionElementAlignPropertyInfo
+instance AttrInfo DOMHTMLTableCaptionElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCaptionElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCaptionElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableCaptionElementAlignPropertyInfo = DOMHTMLTableCaptionElementK
+    type AttrGetType DOMHTMLTableCaptionElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableCaptionElementAlignPropertyInfo = "DOMHTMLTableCaptionElement::align"
+    attrGet _ = getDOMHTMLTableCaptionElementAlign
+    attrSet _ = setDOMHTMLTableCaptionElementAlign
+    attrConstruct _ = constructDOMHTMLTableCaptionElementAlign
+
+type instance AttributeList DOMHTMLTableCaptionElement = DOMHTMLTableCaptionElementAttributeList
+type DOMHTMLTableCaptionElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLTableCaptionElementAlignPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLTableCaptionElement = DOMHTMLTableCaptionElementSignalList
+type DOMHTMLTableCaptionElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLTableCaptionElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCaptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCaptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_caption_element_get_align" webkit_dom_html_table_caption_element_get_align :: 
+    Ptr DOMHTMLTableCaptionElement ->       -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCaptionElement"
+    IO CString
+
+
+dOMHTMLTableCaptionElementGetAlign ::
+    (MonadIO m, DOMHTMLTableCaptionElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableCaptionElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_caption_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_caption_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableCaptionElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCaptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCaptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_caption_element_set_align" webkit_dom_html_table_caption_element_set_align :: 
+    Ptr DOMHTMLTableCaptionElement ->       -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCaptionElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableCaptionElementSetAlign ::
+    (MonadIO m, DOMHTMLTableCaptionElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableCaptionElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_caption_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTableCaptionElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLTableCaptionElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTableCaptionElement.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLTableCaptionElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLTableCaptionElement = DOMHTMLTableCaptionElement (ForeignPtr DOMHTMLTableCaptionElement)
+instance GObject DOMHTMLTableCaptionElement where
+class GObject o => DOMHTMLTableCaptionElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTableCaptionElement o) => DOMHTMLTableCaptionElementK o
+data DOMHTMLTableCaptionElementAlignPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTableCellElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLTableCellElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTableCellElement.hs
@@ -0,0 +1,1418 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLTableCellElement
+    ( 
+
+-- * Exported types
+    DOMHTMLTableCellElement(..)             ,
+    DOMHTMLTableCellElementK                ,
+    toDOMHTMLTableCellElement               ,
+    noDOMHTMLTableCellElement               ,
+
+
+ -- * Methods
+-- ** dOMHTMLTableCellElementGetAbbr
+    dOMHTMLTableCellElementGetAbbr          ,
+
+
+-- ** dOMHTMLTableCellElementGetAlign
+    dOMHTMLTableCellElementGetAlign         ,
+
+
+-- ** dOMHTMLTableCellElementGetAxis
+    dOMHTMLTableCellElementGetAxis          ,
+
+
+-- ** dOMHTMLTableCellElementGetBgColor
+    dOMHTMLTableCellElementGetBgColor       ,
+
+
+-- ** dOMHTMLTableCellElementGetCellIndex
+    dOMHTMLTableCellElementGetCellIndex     ,
+
+
+-- ** dOMHTMLTableCellElementGetCh
+    dOMHTMLTableCellElementGetCh            ,
+
+
+-- ** dOMHTMLTableCellElementGetChOff
+    dOMHTMLTableCellElementGetChOff         ,
+
+
+-- ** dOMHTMLTableCellElementGetColSpan
+    dOMHTMLTableCellElementGetColSpan       ,
+
+
+-- ** dOMHTMLTableCellElementGetHeaders
+    dOMHTMLTableCellElementGetHeaders       ,
+
+
+-- ** dOMHTMLTableCellElementGetHeight
+    dOMHTMLTableCellElementGetHeight        ,
+
+
+-- ** dOMHTMLTableCellElementGetNoWrap
+    dOMHTMLTableCellElementGetNoWrap        ,
+
+
+-- ** dOMHTMLTableCellElementGetRowSpan
+    dOMHTMLTableCellElementGetRowSpan       ,
+
+
+-- ** dOMHTMLTableCellElementGetScope
+    dOMHTMLTableCellElementGetScope         ,
+
+
+-- ** dOMHTMLTableCellElementGetVAlign
+    dOMHTMLTableCellElementGetVAlign        ,
+
+
+-- ** dOMHTMLTableCellElementGetWidth
+    dOMHTMLTableCellElementGetWidth         ,
+
+
+-- ** dOMHTMLTableCellElementSetAbbr
+    dOMHTMLTableCellElementSetAbbr          ,
+
+
+-- ** dOMHTMLTableCellElementSetAlign
+    dOMHTMLTableCellElementSetAlign         ,
+
+
+-- ** dOMHTMLTableCellElementSetAxis
+    dOMHTMLTableCellElementSetAxis          ,
+
+
+-- ** dOMHTMLTableCellElementSetBgColor
+    dOMHTMLTableCellElementSetBgColor       ,
+
+
+-- ** dOMHTMLTableCellElementSetCh
+    dOMHTMLTableCellElementSetCh            ,
+
+
+-- ** dOMHTMLTableCellElementSetChOff
+    dOMHTMLTableCellElementSetChOff         ,
+
+
+-- ** dOMHTMLTableCellElementSetColSpan
+    dOMHTMLTableCellElementSetColSpan       ,
+
+
+-- ** dOMHTMLTableCellElementSetHeaders
+    dOMHTMLTableCellElementSetHeaders       ,
+
+
+-- ** dOMHTMLTableCellElementSetHeight
+    dOMHTMLTableCellElementSetHeight        ,
+
+
+-- ** dOMHTMLTableCellElementSetNoWrap
+    dOMHTMLTableCellElementSetNoWrap        ,
+
+
+-- ** dOMHTMLTableCellElementSetRowSpan
+    dOMHTMLTableCellElementSetRowSpan       ,
+
+
+-- ** dOMHTMLTableCellElementSetScope
+    dOMHTMLTableCellElementSetScope         ,
+
+
+-- ** dOMHTMLTableCellElementSetVAlign
+    dOMHTMLTableCellElementSetVAlign        ,
+
+
+-- ** dOMHTMLTableCellElementSetWidth
+    dOMHTMLTableCellElementSetWidth         ,
+
+
+
+
+ -- * Properties
+-- ** Abbr
+    DOMHTMLTableCellElementAbbrPropertyInfo ,
+    constructDOMHTMLTableCellElementAbbr    ,
+    getDOMHTMLTableCellElementAbbr          ,
+    setDOMHTMLTableCellElementAbbr          ,
+
+
+-- ** Align
+    DOMHTMLTableCellElementAlignPropertyInfo,
+    constructDOMHTMLTableCellElementAlign   ,
+    getDOMHTMLTableCellElementAlign         ,
+    setDOMHTMLTableCellElementAlign         ,
+
+
+-- ** Axis
+    DOMHTMLTableCellElementAxisPropertyInfo ,
+    constructDOMHTMLTableCellElementAxis    ,
+    getDOMHTMLTableCellElementAxis          ,
+    setDOMHTMLTableCellElementAxis          ,
+
+
+-- ** BgColor
+    DOMHTMLTableCellElementBgColorPropertyInfo,
+    constructDOMHTMLTableCellElementBgColor ,
+    getDOMHTMLTableCellElementBgColor       ,
+    setDOMHTMLTableCellElementBgColor       ,
+
+
+-- ** CellIndex
+    DOMHTMLTableCellElementCellIndexPropertyInfo,
+    getDOMHTMLTableCellElementCellIndex     ,
+
+
+-- ** Ch
+    DOMHTMLTableCellElementChPropertyInfo   ,
+    constructDOMHTMLTableCellElementCh      ,
+    getDOMHTMLTableCellElementCh            ,
+    setDOMHTMLTableCellElementCh            ,
+
+
+-- ** ChOff
+    DOMHTMLTableCellElementChOffPropertyInfo,
+    constructDOMHTMLTableCellElementChOff   ,
+    getDOMHTMLTableCellElementChOff         ,
+    setDOMHTMLTableCellElementChOff         ,
+
+
+-- ** ColSpan
+    DOMHTMLTableCellElementColSpanPropertyInfo,
+    constructDOMHTMLTableCellElementColSpan ,
+    getDOMHTMLTableCellElementColSpan       ,
+    setDOMHTMLTableCellElementColSpan       ,
+
+
+-- ** Headers
+    DOMHTMLTableCellElementHeadersPropertyInfo,
+    constructDOMHTMLTableCellElementHeaders ,
+    getDOMHTMLTableCellElementHeaders       ,
+    setDOMHTMLTableCellElementHeaders       ,
+
+
+-- ** Height
+    DOMHTMLTableCellElementHeightPropertyInfo,
+    constructDOMHTMLTableCellElementHeight  ,
+    getDOMHTMLTableCellElementHeight        ,
+    setDOMHTMLTableCellElementHeight        ,
+
+
+-- ** NoWrap
+    DOMHTMLTableCellElementNoWrapPropertyInfo,
+    constructDOMHTMLTableCellElementNoWrap  ,
+    getDOMHTMLTableCellElementNoWrap        ,
+    setDOMHTMLTableCellElementNoWrap        ,
+
+
+-- ** RowSpan
+    DOMHTMLTableCellElementRowSpanPropertyInfo,
+    constructDOMHTMLTableCellElementRowSpan ,
+    getDOMHTMLTableCellElementRowSpan       ,
+    setDOMHTMLTableCellElementRowSpan       ,
+
+
+-- ** Scope
+    DOMHTMLTableCellElementScopePropertyInfo,
+    constructDOMHTMLTableCellElementScope   ,
+    getDOMHTMLTableCellElementScope         ,
+    setDOMHTMLTableCellElementScope         ,
+
+
+-- ** VAlign
+    DOMHTMLTableCellElementVAlignPropertyInfo,
+    constructDOMHTMLTableCellElementVAlign  ,
+    getDOMHTMLTableCellElementVAlign        ,
+    setDOMHTMLTableCellElementVAlign        ,
+
+
+-- ** Width
+    DOMHTMLTableCellElementWidthPropertyInfo,
+    constructDOMHTMLTableCellElementWidth   ,
+    getDOMHTMLTableCellElementWidth         ,
+    setDOMHTMLTableCellElementWidth         ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLTableCellElement = DOMHTMLTableCellElement (ForeignPtr DOMHTMLTableCellElement)
+foreign import ccall "webkit_dom_html_table_cell_element_get_type"
+    c_webkit_dom_html_table_cell_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLTableCellElement = DOMHTMLTableCellElementParentTypes
+type DOMHTMLTableCellElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLTableCellElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_table_cell_element_get_type
+    
+
+class GObject o => DOMHTMLTableCellElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTableCellElement o) => DOMHTMLTableCellElementK o
+
+toDOMHTMLTableCellElement :: DOMHTMLTableCellElementK o => o -> IO DOMHTMLTableCellElement
+toDOMHTMLTableCellElement = unsafeCastTo DOMHTMLTableCellElement
+
+noDOMHTMLTableCellElement :: Maybe DOMHTMLTableCellElement
+noDOMHTMLTableCellElement = Nothing
+
+-- VVV Prop "abbr"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableCellElementAbbr :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> m T.Text
+getDOMHTMLTableCellElementAbbr obj = liftIO $ getObjectPropertyString obj "abbr"
+
+setDOMHTMLTableCellElementAbbr :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableCellElementAbbr obj val = liftIO $ setObjectPropertyString obj "abbr" val
+
+constructDOMHTMLTableCellElementAbbr :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableCellElementAbbr val = constructObjectPropertyString "abbr" val
+
+data DOMHTMLTableCellElementAbbrPropertyInfo
+instance AttrInfo DOMHTMLTableCellElementAbbrPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCellElementAbbrPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCellElementAbbrPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableCellElementAbbrPropertyInfo = DOMHTMLTableCellElementK
+    type AttrGetType DOMHTMLTableCellElementAbbrPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableCellElementAbbrPropertyInfo = "DOMHTMLTableCellElement::abbr"
+    attrGet _ = getDOMHTMLTableCellElementAbbr
+    attrSet _ = setDOMHTMLTableCellElementAbbr
+    attrConstruct _ = constructDOMHTMLTableCellElementAbbr
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableCellElementAlign :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> m T.Text
+getDOMHTMLTableCellElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLTableCellElementAlign :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableCellElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLTableCellElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableCellElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLTableCellElementAlignPropertyInfo
+instance AttrInfo DOMHTMLTableCellElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCellElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCellElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableCellElementAlignPropertyInfo = DOMHTMLTableCellElementK
+    type AttrGetType DOMHTMLTableCellElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableCellElementAlignPropertyInfo = "DOMHTMLTableCellElement::align"
+    attrGet _ = getDOMHTMLTableCellElementAlign
+    attrSet _ = setDOMHTMLTableCellElementAlign
+    attrConstruct _ = constructDOMHTMLTableCellElementAlign
+
+-- VVV Prop "axis"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableCellElementAxis :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> m T.Text
+getDOMHTMLTableCellElementAxis obj = liftIO $ getObjectPropertyString obj "axis"
+
+setDOMHTMLTableCellElementAxis :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableCellElementAxis obj val = liftIO $ setObjectPropertyString obj "axis" val
+
+constructDOMHTMLTableCellElementAxis :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableCellElementAxis val = constructObjectPropertyString "axis" val
+
+data DOMHTMLTableCellElementAxisPropertyInfo
+instance AttrInfo DOMHTMLTableCellElementAxisPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCellElementAxisPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCellElementAxisPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableCellElementAxisPropertyInfo = DOMHTMLTableCellElementK
+    type AttrGetType DOMHTMLTableCellElementAxisPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableCellElementAxisPropertyInfo = "DOMHTMLTableCellElement::axis"
+    attrGet _ = getDOMHTMLTableCellElementAxis
+    attrSet _ = setDOMHTMLTableCellElementAxis
+    attrConstruct _ = constructDOMHTMLTableCellElementAxis
+
+-- VVV Prop "bg-color"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableCellElementBgColor :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> m T.Text
+getDOMHTMLTableCellElementBgColor obj = liftIO $ getObjectPropertyString obj "bg-color"
+
+setDOMHTMLTableCellElementBgColor :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableCellElementBgColor obj val = liftIO $ setObjectPropertyString obj "bg-color" val
+
+constructDOMHTMLTableCellElementBgColor :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableCellElementBgColor val = constructObjectPropertyString "bg-color" val
+
+data DOMHTMLTableCellElementBgColorPropertyInfo
+instance AttrInfo DOMHTMLTableCellElementBgColorPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCellElementBgColorPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCellElementBgColorPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableCellElementBgColorPropertyInfo = DOMHTMLTableCellElementK
+    type AttrGetType DOMHTMLTableCellElementBgColorPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableCellElementBgColorPropertyInfo = "DOMHTMLTableCellElement::bg-color"
+    attrGet _ = getDOMHTMLTableCellElementBgColor
+    attrSet _ = setDOMHTMLTableCellElementBgColor
+    attrConstruct _ = constructDOMHTMLTableCellElementBgColor
+
+-- VVV Prop "cell-index"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTableCellElementCellIndex :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> m Int64
+getDOMHTMLTableCellElementCellIndex obj = liftIO $ getObjectPropertyInt64 obj "cell-index"
+
+data DOMHTMLTableCellElementCellIndexPropertyInfo
+instance AttrInfo DOMHTMLTableCellElementCellIndexPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCellElementCellIndexPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCellElementCellIndexPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTableCellElementCellIndexPropertyInfo = DOMHTMLTableCellElementK
+    type AttrGetType DOMHTMLTableCellElementCellIndexPropertyInfo = Int64
+    type AttrLabel DOMHTMLTableCellElementCellIndexPropertyInfo = "DOMHTMLTableCellElement::cell-index"
+    attrGet _ = getDOMHTMLTableCellElementCellIndex
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "ch"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableCellElementCh :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> m T.Text
+getDOMHTMLTableCellElementCh obj = liftIO $ getObjectPropertyString obj "ch"
+
+setDOMHTMLTableCellElementCh :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableCellElementCh obj val = liftIO $ setObjectPropertyString obj "ch" val
+
+constructDOMHTMLTableCellElementCh :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableCellElementCh val = constructObjectPropertyString "ch" val
+
+data DOMHTMLTableCellElementChPropertyInfo
+instance AttrInfo DOMHTMLTableCellElementChPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCellElementChPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCellElementChPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableCellElementChPropertyInfo = DOMHTMLTableCellElementK
+    type AttrGetType DOMHTMLTableCellElementChPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableCellElementChPropertyInfo = "DOMHTMLTableCellElement::ch"
+    attrGet _ = getDOMHTMLTableCellElementCh
+    attrSet _ = setDOMHTMLTableCellElementCh
+    attrConstruct _ = constructDOMHTMLTableCellElementCh
+
+-- VVV Prop "ch-off"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableCellElementChOff :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> m T.Text
+getDOMHTMLTableCellElementChOff obj = liftIO $ getObjectPropertyString obj "ch-off"
+
+setDOMHTMLTableCellElementChOff :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableCellElementChOff obj val = liftIO $ setObjectPropertyString obj "ch-off" val
+
+constructDOMHTMLTableCellElementChOff :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableCellElementChOff val = constructObjectPropertyString "ch-off" val
+
+data DOMHTMLTableCellElementChOffPropertyInfo
+instance AttrInfo DOMHTMLTableCellElementChOffPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCellElementChOffPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCellElementChOffPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableCellElementChOffPropertyInfo = DOMHTMLTableCellElementK
+    type AttrGetType DOMHTMLTableCellElementChOffPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableCellElementChOffPropertyInfo = "DOMHTMLTableCellElement::ch-off"
+    attrGet _ = getDOMHTMLTableCellElementChOff
+    attrSet _ = setDOMHTMLTableCellElementChOff
+    attrConstruct _ = constructDOMHTMLTableCellElementChOff
+
+-- VVV Prop "col-span"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableCellElementColSpan :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> m Int64
+getDOMHTMLTableCellElementColSpan obj = liftIO $ getObjectPropertyInt64 obj "col-span"
+
+setDOMHTMLTableCellElementColSpan :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> Int64 -> m ()
+setDOMHTMLTableCellElementColSpan obj val = liftIO $ setObjectPropertyInt64 obj "col-span" val
+
+constructDOMHTMLTableCellElementColSpan :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLTableCellElementColSpan val = constructObjectPropertyInt64 "col-span" val
+
+data DOMHTMLTableCellElementColSpanPropertyInfo
+instance AttrInfo DOMHTMLTableCellElementColSpanPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCellElementColSpanPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCellElementColSpanPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLTableCellElementColSpanPropertyInfo = DOMHTMLTableCellElementK
+    type AttrGetType DOMHTMLTableCellElementColSpanPropertyInfo = Int64
+    type AttrLabel DOMHTMLTableCellElementColSpanPropertyInfo = "DOMHTMLTableCellElement::col-span"
+    attrGet _ = getDOMHTMLTableCellElementColSpan
+    attrSet _ = setDOMHTMLTableCellElementColSpan
+    attrConstruct _ = constructDOMHTMLTableCellElementColSpan
+
+-- VVV Prop "headers"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableCellElementHeaders :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> m T.Text
+getDOMHTMLTableCellElementHeaders obj = liftIO $ getObjectPropertyString obj "headers"
+
+setDOMHTMLTableCellElementHeaders :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableCellElementHeaders obj val = liftIO $ setObjectPropertyString obj "headers" val
+
+constructDOMHTMLTableCellElementHeaders :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableCellElementHeaders val = constructObjectPropertyString "headers" val
+
+data DOMHTMLTableCellElementHeadersPropertyInfo
+instance AttrInfo DOMHTMLTableCellElementHeadersPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCellElementHeadersPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCellElementHeadersPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableCellElementHeadersPropertyInfo = DOMHTMLTableCellElementK
+    type AttrGetType DOMHTMLTableCellElementHeadersPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableCellElementHeadersPropertyInfo = "DOMHTMLTableCellElement::headers"
+    attrGet _ = getDOMHTMLTableCellElementHeaders
+    attrSet _ = setDOMHTMLTableCellElementHeaders
+    attrConstruct _ = constructDOMHTMLTableCellElementHeaders
+
+-- VVV Prop "height"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableCellElementHeight :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> m T.Text
+getDOMHTMLTableCellElementHeight obj = liftIO $ getObjectPropertyString obj "height"
+
+setDOMHTMLTableCellElementHeight :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableCellElementHeight obj val = liftIO $ setObjectPropertyString obj "height" val
+
+constructDOMHTMLTableCellElementHeight :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableCellElementHeight val = constructObjectPropertyString "height" val
+
+data DOMHTMLTableCellElementHeightPropertyInfo
+instance AttrInfo DOMHTMLTableCellElementHeightPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCellElementHeightPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCellElementHeightPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableCellElementHeightPropertyInfo = DOMHTMLTableCellElementK
+    type AttrGetType DOMHTMLTableCellElementHeightPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableCellElementHeightPropertyInfo = "DOMHTMLTableCellElement::height"
+    attrGet _ = getDOMHTMLTableCellElementHeight
+    attrSet _ = setDOMHTMLTableCellElementHeight
+    attrConstruct _ = constructDOMHTMLTableCellElementHeight
+
+-- VVV Prop "no-wrap"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableCellElementNoWrap :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> m Bool
+getDOMHTMLTableCellElementNoWrap obj = liftIO $ getObjectPropertyBool obj "no-wrap"
+
+setDOMHTMLTableCellElementNoWrap :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> Bool -> m ()
+setDOMHTMLTableCellElementNoWrap obj val = liftIO $ setObjectPropertyBool obj "no-wrap" val
+
+constructDOMHTMLTableCellElementNoWrap :: Bool -> IO ([Char], GValue)
+constructDOMHTMLTableCellElementNoWrap val = constructObjectPropertyBool "no-wrap" val
+
+data DOMHTMLTableCellElementNoWrapPropertyInfo
+instance AttrInfo DOMHTMLTableCellElementNoWrapPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCellElementNoWrapPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCellElementNoWrapPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLTableCellElementNoWrapPropertyInfo = DOMHTMLTableCellElementK
+    type AttrGetType DOMHTMLTableCellElementNoWrapPropertyInfo = Bool
+    type AttrLabel DOMHTMLTableCellElementNoWrapPropertyInfo = "DOMHTMLTableCellElement::no-wrap"
+    attrGet _ = getDOMHTMLTableCellElementNoWrap
+    attrSet _ = setDOMHTMLTableCellElementNoWrap
+    attrConstruct _ = constructDOMHTMLTableCellElementNoWrap
+
+-- VVV Prop "row-span"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableCellElementRowSpan :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> m Int64
+getDOMHTMLTableCellElementRowSpan obj = liftIO $ getObjectPropertyInt64 obj "row-span"
+
+setDOMHTMLTableCellElementRowSpan :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> Int64 -> m ()
+setDOMHTMLTableCellElementRowSpan obj val = liftIO $ setObjectPropertyInt64 obj "row-span" val
+
+constructDOMHTMLTableCellElementRowSpan :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLTableCellElementRowSpan val = constructObjectPropertyInt64 "row-span" val
+
+data DOMHTMLTableCellElementRowSpanPropertyInfo
+instance AttrInfo DOMHTMLTableCellElementRowSpanPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCellElementRowSpanPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCellElementRowSpanPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLTableCellElementRowSpanPropertyInfo = DOMHTMLTableCellElementK
+    type AttrGetType DOMHTMLTableCellElementRowSpanPropertyInfo = Int64
+    type AttrLabel DOMHTMLTableCellElementRowSpanPropertyInfo = "DOMHTMLTableCellElement::row-span"
+    attrGet _ = getDOMHTMLTableCellElementRowSpan
+    attrSet _ = setDOMHTMLTableCellElementRowSpan
+    attrConstruct _ = constructDOMHTMLTableCellElementRowSpan
+
+-- VVV Prop "scope"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableCellElementScope :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> m T.Text
+getDOMHTMLTableCellElementScope obj = liftIO $ getObjectPropertyString obj "scope"
+
+setDOMHTMLTableCellElementScope :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableCellElementScope obj val = liftIO $ setObjectPropertyString obj "scope" val
+
+constructDOMHTMLTableCellElementScope :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableCellElementScope val = constructObjectPropertyString "scope" val
+
+data DOMHTMLTableCellElementScopePropertyInfo
+instance AttrInfo DOMHTMLTableCellElementScopePropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCellElementScopePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCellElementScopePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableCellElementScopePropertyInfo = DOMHTMLTableCellElementK
+    type AttrGetType DOMHTMLTableCellElementScopePropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableCellElementScopePropertyInfo = "DOMHTMLTableCellElement::scope"
+    attrGet _ = getDOMHTMLTableCellElementScope
+    attrSet _ = setDOMHTMLTableCellElementScope
+    attrConstruct _ = constructDOMHTMLTableCellElementScope
+
+-- VVV Prop "v-align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableCellElementVAlign :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> m T.Text
+getDOMHTMLTableCellElementVAlign obj = liftIO $ getObjectPropertyString obj "v-align"
+
+setDOMHTMLTableCellElementVAlign :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableCellElementVAlign obj val = liftIO $ setObjectPropertyString obj "v-align" val
+
+constructDOMHTMLTableCellElementVAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableCellElementVAlign val = constructObjectPropertyString "v-align" val
+
+data DOMHTMLTableCellElementVAlignPropertyInfo
+instance AttrInfo DOMHTMLTableCellElementVAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCellElementVAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCellElementVAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableCellElementVAlignPropertyInfo = DOMHTMLTableCellElementK
+    type AttrGetType DOMHTMLTableCellElementVAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableCellElementVAlignPropertyInfo = "DOMHTMLTableCellElement::v-align"
+    attrGet _ = getDOMHTMLTableCellElementVAlign
+    attrSet _ = setDOMHTMLTableCellElementVAlign
+    attrConstruct _ = constructDOMHTMLTableCellElementVAlign
+
+-- VVV Prop "width"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableCellElementWidth :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> m T.Text
+getDOMHTMLTableCellElementWidth obj = liftIO $ getObjectPropertyString obj "width"
+
+setDOMHTMLTableCellElementWidth :: (MonadIO m, DOMHTMLTableCellElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableCellElementWidth obj val = liftIO $ setObjectPropertyString obj "width" val
+
+constructDOMHTMLTableCellElementWidth :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableCellElementWidth val = constructObjectPropertyString "width" val
+
+data DOMHTMLTableCellElementWidthPropertyInfo
+instance AttrInfo DOMHTMLTableCellElementWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableCellElementWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableCellElementWidthPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableCellElementWidthPropertyInfo = DOMHTMLTableCellElementK
+    type AttrGetType DOMHTMLTableCellElementWidthPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableCellElementWidthPropertyInfo = "DOMHTMLTableCellElement::width"
+    attrGet _ = getDOMHTMLTableCellElementWidth
+    attrSet _ = setDOMHTMLTableCellElementWidth
+    attrConstruct _ = constructDOMHTMLTableCellElementWidth
+
+type instance AttributeList DOMHTMLTableCellElement = DOMHTMLTableCellElementAttributeList
+type DOMHTMLTableCellElementAttributeList = ('[ '("abbr", DOMHTMLTableCellElementAbbrPropertyInfo), '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLTableCellElementAlignPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("axis", DOMHTMLTableCellElementAxisPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("bg-color", DOMHTMLTableCellElementBgColorPropertyInfo), '("cell-index", DOMHTMLTableCellElementCellIndexPropertyInfo), '("ch", DOMHTMLTableCellElementChPropertyInfo), '("ch-off", DOMHTMLTableCellElementChOffPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("col-span", DOMHTMLTableCellElementColSpanPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("headers", DOMHTMLTableCellElementHeadersPropertyInfo), '("height", DOMHTMLTableCellElementHeightPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("no-wrap", DOMHTMLTableCellElementNoWrapPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("row-span", DOMHTMLTableCellElementRowSpanPropertyInfo), '("scope", DOMHTMLTableCellElementScopePropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("v-align", DOMHTMLTableCellElementVAlignPropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("width", DOMHTMLTableCellElementWidthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLTableCellElement = DOMHTMLTableCellElementSignalList
+type DOMHTMLTableCellElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLTableCellElement::get_abbr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_get_abbr" webkit_dom_html_table_cell_element_get_abbr :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    IO CString
+
+
+dOMHTMLTableCellElementGetAbbr ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableCellElementGetAbbr _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_cell_element_get_abbr _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_cell_element_get_abbr" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableCellElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_get_align" webkit_dom_html_table_cell_element_get_align :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    IO CString
+
+
+dOMHTMLTableCellElementGetAlign ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableCellElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_cell_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_cell_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableCellElement::get_axis
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_get_axis" webkit_dom_html_table_cell_element_get_axis :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    IO CString
+
+
+dOMHTMLTableCellElementGetAxis ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableCellElementGetAxis _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_cell_element_get_axis _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_cell_element_get_axis" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableCellElement::get_bg_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_get_bg_color" webkit_dom_html_table_cell_element_get_bg_color :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    IO CString
+
+
+dOMHTMLTableCellElementGetBgColor ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableCellElementGetBgColor _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_cell_element_get_bg_color _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_cell_element_get_bg_color" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableCellElement::get_cell_index
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_get_cell_index" webkit_dom_html_table_cell_element_get_cell_index :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    IO Int64
+
+
+dOMHTMLTableCellElementGetCellIndex ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLTableCellElementGetCellIndex _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_cell_element_get_cell_index _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLTableCellElement::get_ch
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_get_ch" webkit_dom_html_table_cell_element_get_ch :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    IO CString
+
+
+dOMHTMLTableCellElementGetCh ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableCellElementGetCh _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_cell_element_get_ch _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_cell_element_get_ch" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableCellElement::get_ch_off
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_get_ch_off" webkit_dom_html_table_cell_element_get_ch_off :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    IO CString
+
+
+dOMHTMLTableCellElementGetChOff ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableCellElementGetChOff _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_cell_element_get_ch_off _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_cell_element_get_ch_off" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableCellElement::get_col_span
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_get_col_span" webkit_dom_html_table_cell_element_get_col_span :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    IO Int64
+
+
+dOMHTMLTableCellElementGetColSpan ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLTableCellElementGetColSpan _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_cell_element_get_col_span _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLTableCellElement::get_headers
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_get_headers" webkit_dom_html_table_cell_element_get_headers :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    IO CString
+
+
+dOMHTMLTableCellElementGetHeaders ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableCellElementGetHeaders _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_cell_element_get_headers _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_cell_element_get_headers" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableCellElement::get_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_get_height" webkit_dom_html_table_cell_element_get_height :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    IO CString
+
+
+dOMHTMLTableCellElementGetHeight ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableCellElementGetHeight _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_cell_element_get_height _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_cell_element_get_height" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableCellElement::get_no_wrap
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_get_no_wrap" webkit_dom_html_table_cell_element_get_no_wrap :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    IO CInt
+
+
+dOMHTMLTableCellElementGetNoWrap ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLTableCellElementGetNoWrap _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_cell_element_get_no_wrap _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableCellElement::get_row_span
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_get_row_span" webkit_dom_html_table_cell_element_get_row_span :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    IO Int64
+
+
+dOMHTMLTableCellElementGetRowSpan ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLTableCellElementGetRowSpan _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_cell_element_get_row_span _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLTableCellElement::get_scope
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_get_scope" webkit_dom_html_table_cell_element_get_scope :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    IO CString
+
+
+dOMHTMLTableCellElementGetScope ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableCellElementGetScope _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_cell_element_get_scope _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_cell_element_get_scope" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableCellElement::get_v_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_get_v_align" webkit_dom_html_table_cell_element_get_v_align :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    IO CString
+
+
+dOMHTMLTableCellElementGetVAlign ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableCellElementGetVAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_cell_element_get_v_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_cell_element_get_v_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableCellElement::get_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_get_width" webkit_dom_html_table_cell_element_get_width :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    IO CString
+
+
+dOMHTMLTableCellElementGetWidth ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableCellElementGetWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_cell_element_get_width _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_cell_element_get_width" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableCellElement::set_abbr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_set_abbr" webkit_dom_html_table_cell_element_set_abbr :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableCellElementSetAbbr ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableCellElementSetAbbr _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_cell_element_set_abbr _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableCellElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_set_align" webkit_dom_html_table_cell_element_set_align :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableCellElementSetAlign ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableCellElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_cell_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableCellElement::set_axis
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_set_axis" webkit_dom_html_table_cell_element_set_axis :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableCellElementSetAxis ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableCellElementSetAxis _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_cell_element_set_axis _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableCellElement::set_bg_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_set_bg_color" webkit_dom_html_table_cell_element_set_bg_color :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableCellElementSetBgColor ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableCellElementSetBgColor _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_cell_element_set_bg_color _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableCellElement::set_ch
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_set_ch" webkit_dom_html_table_cell_element_set_ch :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableCellElementSetCh ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableCellElementSetCh _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_cell_element_set_ch _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableCellElement::set_ch_off
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_set_ch_off" webkit_dom_html_table_cell_element_set_ch_off :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableCellElementSetChOff ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableCellElementSetChOff _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_cell_element_set_ch_off _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableCellElement::set_col_span
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_set_col_span" webkit_dom_html_table_cell_element_set_col_span :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLTableCellElementSetColSpan ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLTableCellElementSetColSpan _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_table_cell_element_set_col_span _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLTableCellElement::set_headers
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_set_headers" webkit_dom_html_table_cell_element_set_headers :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableCellElementSetHeaders ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableCellElementSetHeaders _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_cell_element_set_headers _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableCellElement::set_height
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_set_height" webkit_dom_html_table_cell_element_set_height :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableCellElementSetHeight ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableCellElementSetHeight _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_cell_element_set_height _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableCellElement::set_no_wrap
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_set_no_wrap" webkit_dom_html_table_cell_element_set_no_wrap :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLTableCellElementSetNoWrap ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLTableCellElementSetNoWrap _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_table_cell_element_set_no_wrap _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLTableCellElement::set_row_span
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_set_row_span" webkit_dom_html_table_cell_element_set_row_span :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLTableCellElementSetRowSpan ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLTableCellElementSetRowSpan _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_table_cell_element_set_row_span _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLTableCellElement::set_scope
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_set_scope" webkit_dom_html_table_cell_element_set_scope :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableCellElementSetScope ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableCellElementSetScope _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_cell_element_set_scope _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableCellElement::set_v_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_set_v_align" webkit_dom_html_table_cell_element_set_v_align :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableCellElementSetVAlign ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableCellElementSetVAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_cell_element_set_v_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableCellElement::set_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_cell_element_set_width" webkit_dom_html_table_cell_element_set_width :: 
+    Ptr DOMHTMLTableCellElement ->          -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableCellElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableCellElementSetWidth ::
+    (MonadIO m, DOMHTMLTableCellElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableCellElementSetWidth _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_cell_element_set_width _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTableCellElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLTableCellElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTableCellElement.hs-boot
@@ -0,0 +1,28 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLTableCellElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLTableCellElement = DOMHTMLTableCellElement (ForeignPtr DOMHTMLTableCellElement)
+instance GObject DOMHTMLTableCellElement where
+class GObject o => DOMHTMLTableCellElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTableCellElement o) => DOMHTMLTableCellElementK o
+data DOMHTMLTableCellElementAbbrPropertyInfo
+data DOMHTMLTableCellElementAlignPropertyInfo
+data DOMHTMLTableCellElementAxisPropertyInfo
+data DOMHTMLTableCellElementBgColorPropertyInfo
+data DOMHTMLTableCellElementCellIndexPropertyInfo
+data DOMHTMLTableCellElementChPropertyInfo
+data DOMHTMLTableCellElementChOffPropertyInfo
+data DOMHTMLTableCellElementColSpanPropertyInfo
+data DOMHTMLTableCellElementHeadersPropertyInfo
+data DOMHTMLTableCellElementHeightPropertyInfo
+data DOMHTMLTableCellElementNoWrapPropertyInfo
+data DOMHTMLTableCellElementRowSpanPropertyInfo
+data DOMHTMLTableCellElementScopePropertyInfo
+data DOMHTMLTableCellElementVAlignPropertyInfo
+data DOMHTMLTableCellElementWidthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTableColElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLTableColElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTableColElement.hs
@@ -0,0 +1,623 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLTableColElement
+    ( 
+
+-- * Exported types
+    DOMHTMLTableColElement(..)              ,
+    DOMHTMLTableColElementK                 ,
+    toDOMHTMLTableColElement                ,
+    noDOMHTMLTableColElement                ,
+
+
+ -- * Methods
+-- ** dOMHTMLTableColElementGetAlign
+    dOMHTMLTableColElementGetAlign          ,
+
+
+-- ** dOMHTMLTableColElementGetCh
+    dOMHTMLTableColElementGetCh             ,
+
+
+-- ** dOMHTMLTableColElementGetChOff
+    dOMHTMLTableColElementGetChOff          ,
+
+
+-- ** dOMHTMLTableColElementGetSpan
+    dOMHTMLTableColElementGetSpan           ,
+
+
+-- ** dOMHTMLTableColElementGetVAlign
+    dOMHTMLTableColElementGetVAlign         ,
+
+
+-- ** dOMHTMLTableColElementGetWidth
+    dOMHTMLTableColElementGetWidth          ,
+
+
+-- ** dOMHTMLTableColElementSetAlign
+    dOMHTMLTableColElementSetAlign          ,
+
+
+-- ** dOMHTMLTableColElementSetCh
+    dOMHTMLTableColElementSetCh             ,
+
+
+-- ** dOMHTMLTableColElementSetChOff
+    dOMHTMLTableColElementSetChOff          ,
+
+
+-- ** dOMHTMLTableColElementSetSpan
+    dOMHTMLTableColElementSetSpan           ,
+
+
+-- ** dOMHTMLTableColElementSetVAlign
+    dOMHTMLTableColElementSetVAlign         ,
+
+
+-- ** dOMHTMLTableColElementSetWidth
+    dOMHTMLTableColElementSetWidth          ,
+
+
+
+
+ -- * Properties
+-- ** Align
+    DOMHTMLTableColElementAlignPropertyInfo ,
+    constructDOMHTMLTableColElementAlign    ,
+    getDOMHTMLTableColElementAlign          ,
+    setDOMHTMLTableColElementAlign          ,
+
+
+-- ** Ch
+    DOMHTMLTableColElementChPropertyInfo    ,
+    constructDOMHTMLTableColElementCh       ,
+    getDOMHTMLTableColElementCh             ,
+    setDOMHTMLTableColElementCh             ,
+
+
+-- ** ChOff
+    DOMHTMLTableColElementChOffPropertyInfo ,
+    constructDOMHTMLTableColElementChOff    ,
+    getDOMHTMLTableColElementChOff          ,
+    setDOMHTMLTableColElementChOff          ,
+
+
+-- ** Span
+    DOMHTMLTableColElementSpanPropertyInfo  ,
+    constructDOMHTMLTableColElementSpan     ,
+    getDOMHTMLTableColElementSpan           ,
+    setDOMHTMLTableColElementSpan           ,
+
+
+-- ** VAlign
+    DOMHTMLTableColElementVAlignPropertyInfo,
+    constructDOMHTMLTableColElementVAlign   ,
+    getDOMHTMLTableColElementVAlign         ,
+    setDOMHTMLTableColElementVAlign         ,
+
+
+-- ** Width
+    DOMHTMLTableColElementWidthPropertyInfo ,
+    constructDOMHTMLTableColElementWidth    ,
+    getDOMHTMLTableColElementWidth          ,
+    setDOMHTMLTableColElementWidth          ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLTableColElement = DOMHTMLTableColElement (ForeignPtr DOMHTMLTableColElement)
+foreign import ccall "webkit_dom_html_table_col_element_get_type"
+    c_webkit_dom_html_table_col_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLTableColElement = DOMHTMLTableColElementParentTypes
+type DOMHTMLTableColElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLTableColElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_table_col_element_get_type
+    
+
+class GObject o => DOMHTMLTableColElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTableColElement o) => DOMHTMLTableColElementK o
+
+toDOMHTMLTableColElement :: DOMHTMLTableColElementK o => o -> IO DOMHTMLTableColElement
+toDOMHTMLTableColElement = unsafeCastTo DOMHTMLTableColElement
+
+noDOMHTMLTableColElement :: Maybe DOMHTMLTableColElement
+noDOMHTMLTableColElement = Nothing
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableColElementAlign :: (MonadIO m, DOMHTMLTableColElementK o) => o -> m T.Text
+getDOMHTMLTableColElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLTableColElementAlign :: (MonadIO m, DOMHTMLTableColElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableColElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLTableColElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableColElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLTableColElementAlignPropertyInfo
+instance AttrInfo DOMHTMLTableColElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableColElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableColElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableColElementAlignPropertyInfo = DOMHTMLTableColElementK
+    type AttrGetType DOMHTMLTableColElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableColElementAlignPropertyInfo = "DOMHTMLTableColElement::align"
+    attrGet _ = getDOMHTMLTableColElementAlign
+    attrSet _ = setDOMHTMLTableColElementAlign
+    attrConstruct _ = constructDOMHTMLTableColElementAlign
+
+-- VVV Prop "ch"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableColElementCh :: (MonadIO m, DOMHTMLTableColElementK o) => o -> m T.Text
+getDOMHTMLTableColElementCh obj = liftIO $ getObjectPropertyString obj "ch"
+
+setDOMHTMLTableColElementCh :: (MonadIO m, DOMHTMLTableColElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableColElementCh obj val = liftIO $ setObjectPropertyString obj "ch" val
+
+constructDOMHTMLTableColElementCh :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableColElementCh val = constructObjectPropertyString "ch" val
+
+data DOMHTMLTableColElementChPropertyInfo
+instance AttrInfo DOMHTMLTableColElementChPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableColElementChPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableColElementChPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableColElementChPropertyInfo = DOMHTMLTableColElementK
+    type AttrGetType DOMHTMLTableColElementChPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableColElementChPropertyInfo = "DOMHTMLTableColElement::ch"
+    attrGet _ = getDOMHTMLTableColElementCh
+    attrSet _ = setDOMHTMLTableColElementCh
+    attrConstruct _ = constructDOMHTMLTableColElementCh
+
+-- VVV Prop "ch-off"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableColElementChOff :: (MonadIO m, DOMHTMLTableColElementK o) => o -> m T.Text
+getDOMHTMLTableColElementChOff obj = liftIO $ getObjectPropertyString obj "ch-off"
+
+setDOMHTMLTableColElementChOff :: (MonadIO m, DOMHTMLTableColElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableColElementChOff obj val = liftIO $ setObjectPropertyString obj "ch-off" val
+
+constructDOMHTMLTableColElementChOff :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableColElementChOff val = constructObjectPropertyString "ch-off" val
+
+data DOMHTMLTableColElementChOffPropertyInfo
+instance AttrInfo DOMHTMLTableColElementChOffPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableColElementChOffPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableColElementChOffPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableColElementChOffPropertyInfo = DOMHTMLTableColElementK
+    type AttrGetType DOMHTMLTableColElementChOffPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableColElementChOffPropertyInfo = "DOMHTMLTableColElement::ch-off"
+    attrGet _ = getDOMHTMLTableColElementChOff
+    attrSet _ = setDOMHTMLTableColElementChOff
+    attrConstruct _ = constructDOMHTMLTableColElementChOff
+
+-- VVV Prop "span"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableColElementSpan :: (MonadIO m, DOMHTMLTableColElementK o) => o -> m Int64
+getDOMHTMLTableColElementSpan obj = liftIO $ getObjectPropertyInt64 obj "span"
+
+setDOMHTMLTableColElementSpan :: (MonadIO m, DOMHTMLTableColElementK o) => o -> Int64 -> m ()
+setDOMHTMLTableColElementSpan obj val = liftIO $ setObjectPropertyInt64 obj "span" val
+
+constructDOMHTMLTableColElementSpan :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLTableColElementSpan val = constructObjectPropertyInt64 "span" val
+
+data DOMHTMLTableColElementSpanPropertyInfo
+instance AttrInfo DOMHTMLTableColElementSpanPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableColElementSpanPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableColElementSpanPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLTableColElementSpanPropertyInfo = DOMHTMLTableColElementK
+    type AttrGetType DOMHTMLTableColElementSpanPropertyInfo = Int64
+    type AttrLabel DOMHTMLTableColElementSpanPropertyInfo = "DOMHTMLTableColElement::span"
+    attrGet _ = getDOMHTMLTableColElementSpan
+    attrSet _ = setDOMHTMLTableColElementSpan
+    attrConstruct _ = constructDOMHTMLTableColElementSpan
+
+-- VVV Prop "v-align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableColElementVAlign :: (MonadIO m, DOMHTMLTableColElementK o) => o -> m T.Text
+getDOMHTMLTableColElementVAlign obj = liftIO $ getObjectPropertyString obj "v-align"
+
+setDOMHTMLTableColElementVAlign :: (MonadIO m, DOMHTMLTableColElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableColElementVAlign obj val = liftIO $ setObjectPropertyString obj "v-align" val
+
+constructDOMHTMLTableColElementVAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableColElementVAlign val = constructObjectPropertyString "v-align" val
+
+data DOMHTMLTableColElementVAlignPropertyInfo
+instance AttrInfo DOMHTMLTableColElementVAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableColElementVAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableColElementVAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableColElementVAlignPropertyInfo = DOMHTMLTableColElementK
+    type AttrGetType DOMHTMLTableColElementVAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableColElementVAlignPropertyInfo = "DOMHTMLTableColElement::v-align"
+    attrGet _ = getDOMHTMLTableColElementVAlign
+    attrSet _ = setDOMHTMLTableColElementVAlign
+    attrConstruct _ = constructDOMHTMLTableColElementVAlign
+
+-- VVV Prop "width"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableColElementWidth :: (MonadIO m, DOMHTMLTableColElementK o) => o -> m T.Text
+getDOMHTMLTableColElementWidth obj = liftIO $ getObjectPropertyString obj "width"
+
+setDOMHTMLTableColElementWidth :: (MonadIO m, DOMHTMLTableColElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableColElementWidth obj val = liftIO $ setObjectPropertyString obj "width" val
+
+constructDOMHTMLTableColElementWidth :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableColElementWidth val = constructObjectPropertyString "width" val
+
+data DOMHTMLTableColElementWidthPropertyInfo
+instance AttrInfo DOMHTMLTableColElementWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableColElementWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableColElementWidthPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableColElementWidthPropertyInfo = DOMHTMLTableColElementK
+    type AttrGetType DOMHTMLTableColElementWidthPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableColElementWidthPropertyInfo = "DOMHTMLTableColElement::width"
+    attrGet _ = getDOMHTMLTableColElementWidth
+    attrSet _ = setDOMHTMLTableColElementWidth
+    attrConstruct _ = constructDOMHTMLTableColElementWidth
+
+type instance AttributeList DOMHTMLTableColElement = DOMHTMLTableColElementAttributeList
+type DOMHTMLTableColElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLTableColElementAlignPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("ch", DOMHTMLTableColElementChPropertyInfo), '("ch-off", DOMHTMLTableColElementChOffPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("span", DOMHTMLTableColElementSpanPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("v-align", DOMHTMLTableColElementVAlignPropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("width", DOMHTMLTableColElementWidthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLTableColElement = DOMHTMLTableColElementSignalList
+type DOMHTMLTableColElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLTableColElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_col_element_get_align" webkit_dom_html_table_col_element_get_align :: 
+    Ptr DOMHTMLTableColElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableColElement"
+    IO CString
+
+
+dOMHTMLTableColElementGetAlign ::
+    (MonadIO m, DOMHTMLTableColElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableColElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_col_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_col_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableColElement::get_ch
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_col_element_get_ch" webkit_dom_html_table_col_element_get_ch :: 
+    Ptr DOMHTMLTableColElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableColElement"
+    IO CString
+
+
+dOMHTMLTableColElementGetCh ::
+    (MonadIO m, DOMHTMLTableColElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableColElementGetCh _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_col_element_get_ch _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_col_element_get_ch" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableColElement::get_ch_off
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_col_element_get_ch_off" webkit_dom_html_table_col_element_get_ch_off :: 
+    Ptr DOMHTMLTableColElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableColElement"
+    IO CString
+
+
+dOMHTMLTableColElementGetChOff ::
+    (MonadIO m, DOMHTMLTableColElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableColElementGetChOff _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_col_element_get_ch_off _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_col_element_get_ch_off" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableColElement::get_span
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_col_element_get_span" webkit_dom_html_table_col_element_get_span :: 
+    Ptr DOMHTMLTableColElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableColElement"
+    IO Int64
+
+
+dOMHTMLTableColElementGetSpan ::
+    (MonadIO m, DOMHTMLTableColElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLTableColElementGetSpan _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_col_element_get_span _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLTableColElement::get_v_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_col_element_get_v_align" webkit_dom_html_table_col_element_get_v_align :: 
+    Ptr DOMHTMLTableColElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableColElement"
+    IO CString
+
+
+dOMHTMLTableColElementGetVAlign ::
+    (MonadIO m, DOMHTMLTableColElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableColElementGetVAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_col_element_get_v_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_col_element_get_v_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableColElement::get_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_col_element_get_width" webkit_dom_html_table_col_element_get_width :: 
+    Ptr DOMHTMLTableColElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableColElement"
+    IO CString
+
+
+dOMHTMLTableColElementGetWidth ::
+    (MonadIO m, DOMHTMLTableColElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableColElementGetWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_col_element_get_width _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_col_element_get_width" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableColElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_col_element_set_align" webkit_dom_html_table_col_element_set_align :: 
+    Ptr DOMHTMLTableColElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableColElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableColElementSetAlign ::
+    (MonadIO m, DOMHTMLTableColElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableColElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_col_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableColElement::set_ch
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_col_element_set_ch" webkit_dom_html_table_col_element_set_ch :: 
+    Ptr DOMHTMLTableColElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableColElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableColElementSetCh ::
+    (MonadIO m, DOMHTMLTableColElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableColElementSetCh _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_col_element_set_ch _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableColElement::set_ch_off
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_col_element_set_ch_off" webkit_dom_html_table_col_element_set_ch_off :: 
+    Ptr DOMHTMLTableColElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableColElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableColElementSetChOff ::
+    (MonadIO m, DOMHTMLTableColElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableColElementSetChOff _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_col_element_set_ch_off _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableColElement::set_span
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_col_element_set_span" webkit_dom_html_table_col_element_set_span :: 
+    Ptr DOMHTMLTableColElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableColElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLTableColElementSetSpan ::
+    (MonadIO m, DOMHTMLTableColElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLTableColElementSetSpan _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_table_col_element_set_span _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLTableColElement::set_v_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_col_element_set_v_align" webkit_dom_html_table_col_element_set_v_align :: 
+    Ptr DOMHTMLTableColElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableColElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableColElementSetVAlign ::
+    (MonadIO m, DOMHTMLTableColElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableColElementSetVAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_col_element_set_v_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableColElement::set_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableColElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_col_element_set_width" webkit_dom_html_table_col_element_set_width :: 
+    Ptr DOMHTMLTableColElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableColElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableColElementSetWidth ::
+    (MonadIO m, DOMHTMLTableColElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableColElementSetWidth _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_col_element_set_width _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTableColElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLTableColElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTableColElement.hs-boot
@@ -0,0 +1,19 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLTableColElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLTableColElement = DOMHTMLTableColElement (ForeignPtr DOMHTMLTableColElement)
+instance GObject DOMHTMLTableColElement where
+class GObject o => DOMHTMLTableColElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTableColElement o) => DOMHTMLTableColElementK o
+data DOMHTMLTableColElementAlignPropertyInfo
+data DOMHTMLTableColElementChPropertyInfo
+data DOMHTMLTableColElementChOffPropertyInfo
+data DOMHTMLTableColElementSpanPropertyInfo
+data DOMHTMLTableColElementVAlignPropertyInfo
+data DOMHTMLTableColElementWidthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTableElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLTableElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTableElement.hs
@@ -0,0 +1,1469 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLTableElement
+    ( 
+
+-- * Exported types
+    DOMHTMLTableElement(..)                 ,
+    DOMHTMLTableElementK                    ,
+    toDOMHTMLTableElement                   ,
+    noDOMHTMLTableElement                   ,
+
+
+ -- * Methods
+-- ** dOMHTMLTableElementCreateCaption
+    dOMHTMLTableElementCreateCaption        ,
+
+
+-- ** dOMHTMLTableElementCreateTFoot
+    dOMHTMLTableElementCreateTFoot          ,
+
+
+-- ** dOMHTMLTableElementCreateTHead
+    dOMHTMLTableElementCreateTHead          ,
+
+
+-- ** dOMHTMLTableElementDeleteCaption
+    dOMHTMLTableElementDeleteCaption        ,
+
+
+-- ** dOMHTMLTableElementDeleteRow
+    dOMHTMLTableElementDeleteRow            ,
+
+
+-- ** dOMHTMLTableElementDeleteTFoot
+    dOMHTMLTableElementDeleteTFoot          ,
+
+
+-- ** dOMHTMLTableElementDeleteTHead
+    dOMHTMLTableElementDeleteTHead          ,
+
+
+-- ** dOMHTMLTableElementGetAlign
+    dOMHTMLTableElementGetAlign             ,
+
+
+-- ** dOMHTMLTableElementGetBgColor
+    dOMHTMLTableElementGetBgColor           ,
+
+
+-- ** dOMHTMLTableElementGetBorder
+    dOMHTMLTableElementGetBorder            ,
+
+
+-- ** dOMHTMLTableElementGetCaption
+    dOMHTMLTableElementGetCaption           ,
+
+
+-- ** dOMHTMLTableElementGetCellPadding
+    dOMHTMLTableElementGetCellPadding       ,
+
+
+-- ** dOMHTMLTableElementGetCellSpacing
+    dOMHTMLTableElementGetCellSpacing       ,
+
+
+-- ** dOMHTMLTableElementGetRows
+    dOMHTMLTableElementGetRows              ,
+
+
+-- ** dOMHTMLTableElementGetRules
+    dOMHTMLTableElementGetRules             ,
+
+
+-- ** dOMHTMLTableElementGetSummary
+    dOMHTMLTableElementGetSummary           ,
+
+
+-- ** dOMHTMLTableElementGetTBodies
+    dOMHTMLTableElementGetTBodies           ,
+
+
+-- ** dOMHTMLTableElementGetTFoot
+    dOMHTMLTableElementGetTFoot             ,
+
+
+-- ** dOMHTMLTableElementGetTHead
+    dOMHTMLTableElementGetTHead             ,
+
+
+-- ** dOMHTMLTableElementGetWidth
+    dOMHTMLTableElementGetWidth             ,
+
+
+-- ** dOMHTMLTableElementInsertRow
+    dOMHTMLTableElementInsertRow            ,
+
+
+-- ** dOMHTMLTableElementSetAlign
+    dOMHTMLTableElementSetAlign             ,
+
+
+-- ** dOMHTMLTableElementSetBgColor
+    dOMHTMLTableElementSetBgColor           ,
+
+
+-- ** dOMHTMLTableElementSetBorder
+    dOMHTMLTableElementSetBorder            ,
+
+
+-- ** dOMHTMLTableElementSetCaption
+    dOMHTMLTableElementSetCaption           ,
+
+
+-- ** dOMHTMLTableElementSetCellPadding
+    dOMHTMLTableElementSetCellPadding       ,
+
+
+-- ** dOMHTMLTableElementSetCellSpacing
+    dOMHTMLTableElementSetCellSpacing       ,
+
+
+-- ** dOMHTMLTableElementSetRules
+    dOMHTMLTableElementSetRules             ,
+
+
+-- ** dOMHTMLTableElementSetSummary
+    dOMHTMLTableElementSetSummary           ,
+
+
+-- ** dOMHTMLTableElementSetTFoot
+    dOMHTMLTableElementSetTFoot             ,
+
+
+-- ** dOMHTMLTableElementSetTHead
+    dOMHTMLTableElementSetTHead             ,
+
+
+-- ** dOMHTMLTableElementSetWidth
+    dOMHTMLTableElementSetWidth             ,
+
+
+
+
+ -- * Properties
+-- ** Align
+    DOMHTMLTableElementAlignPropertyInfo    ,
+    constructDOMHTMLTableElementAlign       ,
+    getDOMHTMLTableElementAlign             ,
+    setDOMHTMLTableElementAlign             ,
+
+
+-- ** BgColor
+    DOMHTMLTableElementBgColorPropertyInfo  ,
+    constructDOMHTMLTableElementBgColor     ,
+    getDOMHTMLTableElementBgColor           ,
+    setDOMHTMLTableElementBgColor           ,
+
+
+-- ** Border
+    DOMHTMLTableElementBorderPropertyInfo   ,
+    constructDOMHTMLTableElementBorder      ,
+    getDOMHTMLTableElementBorder            ,
+    setDOMHTMLTableElementBorder            ,
+
+
+-- ** Caption
+    DOMHTMLTableElementCaptionPropertyInfo  ,
+    getDOMHTMLTableElementCaption           ,
+
+
+-- ** CellPadding
+    DOMHTMLTableElementCellPaddingPropertyInfo,
+    constructDOMHTMLTableElementCellPadding ,
+    getDOMHTMLTableElementCellPadding       ,
+    setDOMHTMLTableElementCellPadding       ,
+
+
+-- ** CellSpacing
+    DOMHTMLTableElementCellSpacingPropertyInfo,
+    constructDOMHTMLTableElementCellSpacing ,
+    getDOMHTMLTableElementCellSpacing       ,
+    setDOMHTMLTableElementCellSpacing       ,
+
+
+-- ** Frame
+    DOMHTMLTableElementFramePropertyInfo    ,
+    constructDOMHTMLTableElementFrame       ,
+    getDOMHTMLTableElementFrame             ,
+    setDOMHTMLTableElementFrame             ,
+
+
+-- ** Rows
+    DOMHTMLTableElementRowsPropertyInfo     ,
+    getDOMHTMLTableElementRows              ,
+
+
+-- ** Rules
+    DOMHTMLTableElementRulesPropertyInfo    ,
+    constructDOMHTMLTableElementRules       ,
+    getDOMHTMLTableElementRules             ,
+    setDOMHTMLTableElementRules             ,
+
+
+-- ** Summary
+    DOMHTMLTableElementSummaryPropertyInfo  ,
+    constructDOMHTMLTableElementSummary     ,
+    getDOMHTMLTableElementSummary           ,
+    setDOMHTMLTableElementSummary           ,
+
+
+-- ** TBodies
+    DOMHTMLTableElementTBodiesPropertyInfo  ,
+    getDOMHTMLTableElementTBodies           ,
+
+
+-- ** TFoot
+    DOMHTMLTableElementTFootPropertyInfo    ,
+    getDOMHTMLTableElementTFoot             ,
+
+
+-- ** THead
+    DOMHTMLTableElementTHeadPropertyInfo    ,
+    getDOMHTMLTableElementTHead             ,
+
+
+-- ** Width
+    DOMHTMLTableElementWidthPropertyInfo    ,
+    constructDOMHTMLTableElementWidth       ,
+    getDOMHTMLTableElementWidth             ,
+    setDOMHTMLTableElementWidth             ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLTableElement = DOMHTMLTableElement (ForeignPtr DOMHTMLTableElement)
+foreign import ccall "webkit_dom_html_table_element_get_type"
+    c_webkit_dom_html_table_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLTableElement = DOMHTMLTableElementParentTypes
+type DOMHTMLTableElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLTableElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_table_element_get_type
+    
+
+class GObject o => DOMHTMLTableElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTableElement o) => DOMHTMLTableElementK o
+
+toDOMHTMLTableElement :: DOMHTMLTableElementK o => o -> IO DOMHTMLTableElement
+toDOMHTMLTableElement = unsafeCastTo DOMHTMLTableElement
+
+noDOMHTMLTableElement :: Maybe DOMHTMLTableElement
+noDOMHTMLTableElement = Nothing
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableElementAlign :: (MonadIO m, DOMHTMLTableElementK o) => o -> m T.Text
+getDOMHTMLTableElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLTableElementAlign :: (MonadIO m, DOMHTMLTableElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLTableElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLTableElementAlignPropertyInfo
+instance AttrInfo DOMHTMLTableElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableElementAlignPropertyInfo = DOMHTMLTableElementK
+    type AttrGetType DOMHTMLTableElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableElementAlignPropertyInfo = "DOMHTMLTableElement::align"
+    attrGet _ = getDOMHTMLTableElementAlign
+    attrSet _ = setDOMHTMLTableElementAlign
+    attrConstruct _ = constructDOMHTMLTableElementAlign
+
+-- VVV Prop "bg-color"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableElementBgColor :: (MonadIO m, DOMHTMLTableElementK o) => o -> m T.Text
+getDOMHTMLTableElementBgColor obj = liftIO $ getObjectPropertyString obj "bg-color"
+
+setDOMHTMLTableElementBgColor :: (MonadIO m, DOMHTMLTableElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableElementBgColor obj val = liftIO $ setObjectPropertyString obj "bg-color" val
+
+constructDOMHTMLTableElementBgColor :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableElementBgColor val = constructObjectPropertyString "bg-color" val
+
+data DOMHTMLTableElementBgColorPropertyInfo
+instance AttrInfo DOMHTMLTableElementBgColorPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableElementBgColorPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableElementBgColorPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableElementBgColorPropertyInfo = DOMHTMLTableElementK
+    type AttrGetType DOMHTMLTableElementBgColorPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableElementBgColorPropertyInfo = "DOMHTMLTableElement::bg-color"
+    attrGet _ = getDOMHTMLTableElementBgColor
+    attrSet _ = setDOMHTMLTableElementBgColor
+    attrConstruct _ = constructDOMHTMLTableElementBgColor
+
+-- VVV Prop "border"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableElementBorder :: (MonadIO m, DOMHTMLTableElementK o) => o -> m T.Text
+getDOMHTMLTableElementBorder obj = liftIO $ getObjectPropertyString obj "border"
+
+setDOMHTMLTableElementBorder :: (MonadIO m, DOMHTMLTableElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableElementBorder obj val = liftIO $ setObjectPropertyString obj "border" val
+
+constructDOMHTMLTableElementBorder :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableElementBorder val = constructObjectPropertyString "border" val
+
+data DOMHTMLTableElementBorderPropertyInfo
+instance AttrInfo DOMHTMLTableElementBorderPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableElementBorderPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableElementBorderPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableElementBorderPropertyInfo = DOMHTMLTableElementK
+    type AttrGetType DOMHTMLTableElementBorderPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableElementBorderPropertyInfo = "DOMHTMLTableElement::border"
+    attrGet _ = getDOMHTMLTableElementBorder
+    attrSet _ = setDOMHTMLTableElementBorder
+    attrConstruct _ = constructDOMHTMLTableElementBorder
+
+-- VVV Prop "caption"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLTableCaptionElement"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTableElementCaption :: (MonadIO m, DOMHTMLTableElementK o) => o -> m DOMHTMLTableCaptionElement
+getDOMHTMLTableElementCaption obj = liftIO $ getObjectPropertyObject obj "caption" DOMHTMLTableCaptionElement
+
+data DOMHTMLTableElementCaptionPropertyInfo
+instance AttrInfo DOMHTMLTableElementCaptionPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableElementCaptionPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableElementCaptionPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTableElementCaptionPropertyInfo = DOMHTMLTableElementK
+    type AttrGetType DOMHTMLTableElementCaptionPropertyInfo = DOMHTMLTableCaptionElement
+    type AttrLabel DOMHTMLTableElementCaptionPropertyInfo = "DOMHTMLTableElement::caption"
+    attrGet _ = getDOMHTMLTableElementCaption
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "cell-padding"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableElementCellPadding :: (MonadIO m, DOMHTMLTableElementK o) => o -> m T.Text
+getDOMHTMLTableElementCellPadding obj = liftIO $ getObjectPropertyString obj "cell-padding"
+
+setDOMHTMLTableElementCellPadding :: (MonadIO m, DOMHTMLTableElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableElementCellPadding obj val = liftIO $ setObjectPropertyString obj "cell-padding" val
+
+constructDOMHTMLTableElementCellPadding :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableElementCellPadding val = constructObjectPropertyString "cell-padding" val
+
+data DOMHTMLTableElementCellPaddingPropertyInfo
+instance AttrInfo DOMHTMLTableElementCellPaddingPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableElementCellPaddingPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableElementCellPaddingPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableElementCellPaddingPropertyInfo = DOMHTMLTableElementK
+    type AttrGetType DOMHTMLTableElementCellPaddingPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableElementCellPaddingPropertyInfo = "DOMHTMLTableElement::cell-padding"
+    attrGet _ = getDOMHTMLTableElementCellPadding
+    attrSet _ = setDOMHTMLTableElementCellPadding
+    attrConstruct _ = constructDOMHTMLTableElementCellPadding
+
+-- VVV Prop "cell-spacing"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableElementCellSpacing :: (MonadIO m, DOMHTMLTableElementK o) => o -> m T.Text
+getDOMHTMLTableElementCellSpacing obj = liftIO $ getObjectPropertyString obj "cell-spacing"
+
+setDOMHTMLTableElementCellSpacing :: (MonadIO m, DOMHTMLTableElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableElementCellSpacing obj val = liftIO $ setObjectPropertyString obj "cell-spacing" val
+
+constructDOMHTMLTableElementCellSpacing :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableElementCellSpacing val = constructObjectPropertyString "cell-spacing" val
+
+data DOMHTMLTableElementCellSpacingPropertyInfo
+instance AttrInfo DOMHTMLTableElementCellSpacingPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableElementCellSpacingPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableElementCellSpacingPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableElementCellSpacingPropertyInfo = DOMHTMLTableElementK
+    type AttrGetType DOMHTMLTableElementCellSpacingPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableElementCellSpacingPropertyInfo = "DOMHTMLTableElement::cell-spacing"
+    attrGet _ = getDOMHTMLTableElementCellSpacing
+    attrSet _ = setDOMHTMLTableElementCellSpacing
+    attrConstruct _ = constructDOMHTMLTableElementCellSpacing
+
+-- VVV Prop "frame"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableElementFrame :: (MonadIO m, DOMHTMLTableElementK o) => o -> m T.Text
+getDOMHTMLTableElementFrame obj = liftIO $ getObjectPropertyString obj "frame"
+
+setDOMHTMLTableElementFrame :: (MonadIO m, DOMHTMLTableElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableElementFrame obj val = liftIO $ setObjectPropertyString obj "frame" val
+
+constructDOMHTMLTableElementFrame :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableElementFrame val = constructObjectPropertyString "frame" val
+
+data DOMHTMLTableElementFramePropertyInfo
+instance AttrInfo DOMHTMLTableElementFramePropertyInfo where
+    type AttrAllowedOps DOMHTMLTableElementFramePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableElementFramePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableElementFramePropertyInfo = DOMHTMLTableElementK
+    type AttrGetType DOMHTMLTableElementFramePropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableElementFramePropertyInfo = "DOMHTMLTableElement::frame"
+    attrGet _ = getDOMHTMLTableElementFrame
+    attrSet _ = setDOMHTMLTableElementFrame
+    attrConstruct _ = constructDOMHTMLTableElementFrame
+
+-- VVV Prop "rows"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTableElementRows :: (MonadIO m, DOMHTMLTableElementK o) => o -> m DOMHTMLCollection
+getDOMHTMLTableElementRows obj = liftIO $ getObjectPropertyObject obj "rows" DOMHTMLCollection
+
+data DOMHTMLTableElementRowsPropertyInfo
+instance AttrInfo DOMHTMLTableElementRowsPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableElementRowsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableElementRowsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTableElementRowsPropertyInfo = DOMHTMLTableElementK
+    type AttrGetType DOMHTMLTableElementRowsPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMHTMLTableElementRowsPropertyInfo = "DOMHTMLTableElement::rows"
+    attrGet _ = getDOMHTMLTableElementRows
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "rules"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableElementRules :: (MonadIO m, DOMHTMLTableElementK o) => o -> m T.Text
+getDOMHTMLTableElementRules obj = liftIO $ getObjectPropertyString obj "rules"
+
+setDOMHTMLTableElementRules :: (MonadIO m, DOMHTMLTableElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableElementRules obj val = liftIO $ setObjectPropertyString obj "rules" val
+
+constructDOMHTMLTableElementRules :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableElementRules val = constructObjectPropertyString "rules" val
+
+data DOMHTMLTableElementRulesPropertyInfo
+instance AttrInfo DOMHTMLTableElementRulesPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableElementRulesPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableElementRulesPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableElementRulesPropertyInfo = DOMHTMLTableElementK
+    type AttrGetType DOMHTMLTableElementRulesPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableElementRulesPropertyInfo = "DOMHTMLTableElement::rules"
+    attrGet _ = getDOMHTMLTableElementRules
+    attrSet _ = setDOMHTMLTableElementRules
+    attrConstruct _ = constructDOMHTMLTableElementRules
+
+-- VVV Prop "summary"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableElementSummary :: (MonadIO m, DOMHTMLTableElementK o) => o -> m T.Text
+getDOMHTMLTableElementSummary obj = liftIO $ getObjectPropertyString obj "summary"
+
+setDOMHTMLTableElementSummary :: (MonadIO m, DOMHTMLTableElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableElementSummary obj val = liftIO $ setObjectPropertyString obj "summary" val
+
+constructDOMHTMLTableElementSummary :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableElementSummary val = constructObjectPropertyString "summary" val
+
+data DOMHTMLTableElementSummaryPropertyInfo
+instance AttrInfo DOMHTMLTableElementSummaryPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableElementSummaryPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableElementSummaryPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableElementSummaryPropertyInfo = DOMHTMLTableElementK
+    type AttrGetType DOMHTMLTableElementSummaryPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableElementSummaryPropertyInfo = "DOMHTMLTableElement::summary"
+    attrGet _ = getDOMHTMLTableElementSummary
+    attrSet _ = setDOMHTMLTableElementSummary
+    attrConstruct _ = constructDOMHTMLTableElementSummary
+
+-- VVV Prop "t-bodies"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTableElementTBodies :: (MonadIO m, DOMHTMLTableElementK o) => o -> m DOMHTMLCollection
+getDOMHTMLTableElementTBodies obj = liftIO $ getObjectPropertyObject obj "t-bodies" DOMHTMLCollection
+
+data DOMHTMLTableElementTBodiesPropertyInfo
+instance AttrInfo DOMHTMLTableElementTBodiesPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableElementTBodiesPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableElementTBodiesPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTableElementTBodiesPropertyInfo = DOMHTMLTableElementK
+    type AttrGetType DOMHTMLTableElementTBodiesPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMHTMLTableElementTBodiesPropertyInfo = "DOMHTMLTableElement::t-bodies"
+    attrGet _ = getDOMHTMLTableElementTBodies
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "t-foot"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTableElementTFoot :: (MonadIO m, DOMHTMLTableElementK o) => o -> m DOMHTMLTableSectionElement
+getDOMHTMLTableElementTFoot obj = liftIO $ getObjectPropertyObject obj "t-foot" DOMHTMLTableSectionElement
+
+data DOMHTMLTableElementTFootPropertyInfo
+instance AttrInfo DOMHTMLTableElementTFootPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableElementTFootPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableElementTFootPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTableElementTFootPropertyInfo = DOMHTMLTableElementK
+    type AttrGetType DOMHTMLTableElementTFootPropertyInfo = DOMHTMLTableSectionElement
+    type AttrLabel DOMHTMLTableElementTFootPropertyInfo = "DOMHTMLTableElement::t-foot"
+    attrGet _ = getDOMHTMLTableElementTFoot
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "t-head"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTableElementTHead :: (MonadIO m, DOMHTMLTableElementK o) => o -> m DOMHTMLTableSectionElement
+getDOMHTMLTableElementTHead obj = liftIO $ getObjectPropertyObject obj "t-head" DOMHTMLTableSectionElement
+
+data DOMHTMLTableElementTHeadPropertyInfo
+instance AttrInfo DOMHTMLTableElementTHeadPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableElementTHeadPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableElementTHeadPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTableElementTHeadPropertyInfo = DOMHTMLTableElementK
+    type AttrGetType DOMHTMLTableElementTHeadPropertyInfo = DOMHTMLTableSectionElement
+    type AttrLabel DOMHTMLTableElementTHeadPropertyInfo = "DOMHTMLTableElement::t-head"
+    attrGet _ = getDOMHTMLTableElementTHead
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "width"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableElementWidth :: (MonadIO m, DOMHTMLTableElementK o) => o -> m T.Text
+getDOMHTMLTableElementWidth obj = liftIO $ getObjectPropertyString obj "width"
+
+setDOMHTMLTableElementWidth :: (MonadIO m, DOMHTMLTableElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableElementWidth obj val = liftIO $ setObjectPropertyString obj "width" val
+
+constructDOMHTMLTableElementWidth :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableElementWidth val = constructObjectPropertyString "width" val
+
+data DOMHTMLTableElementWidthPropertyInfo
+instance AttrInfo DOMHTMLTableElementWidthPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableElementWidthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableElementWidthPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableElementWidthPropertyInfo = DOMHTMLTableElementK
+    type AttrGetType DOMHTMLTableElementWidthPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableElementWidthPropertyInfo = "DOMHTMLTableElement::width"
+    attrGet _ = getDOMHTMLTableElementWidth
+    attrSet _ = setDOMHTMLTableElementWidth
+    attrConstruct _ = constructDOMHTMLTableElementWidth
+
+type instance AttributeList DOMHTMLTableElement = DOMHTMLTableElementAttributeList
+type DOMHTMLTableElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLTableElementAlignPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("bg-color", DOMHTMLTableElementBgColorPropertyInfo), '("border", DOMHTMLTableElementBorderPropertyInfo), '("caption", DOMHTMLTableElementCaptionPropertyInfo), '("cell-padding", DOMHTMLTableElementCellPaddingPropertyInfo), '("cell-spacing", DOMHTMLTableElementCellSpacingPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("frame", DOMHTMLTableElementFramePropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("rows", DOMHTMLTableElementRowsPropertyInfo), '("rules", DOMHTMLTableElementRulesPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("summary", DOMHTMLTableElementSummaryPropertyInfo), '("t-bodies", DOMHTMLTableElementTBodiesPropertyInfo), '("t-foot", DOMHTMLTableElementTFootPropertyInfo), '("t-head", DOMHTMLTableElementTHeadPropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("width", DOMHTMLTableElementWidthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLTableElement = DOMHTMLTableElementSignalList
+type DOMHTMLTableElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLTableElement::create_caption
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_create_caption" webkit_dom_html_table_element_create_caption :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO (Ptr DOMHTMLElement)
+
+
+dOMHTMLTableElementCreateCaption ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLElement
+dOMHTMLTableElementCreateCaption _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_create_caption _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_create_caption" result
+    result' <- (newObject DOMHTMLElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::create_t_foot
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_create_t_foot" webkit_dom_html_table_element_create_t_foot :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO (Ptr DOMHTMLElement)
+
+
+dOMHTMLTableElementCreateTFoot ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLElement
+dOMHTMLTableElementCreateTFoot _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_create_t_foot _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_create_t_foot" result
+    result' <- (newObject DOMHTMLElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::create_t_head
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_create_t_head" webkit_dom_html_table_element_create_t_head :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO (Ptr DOMHTMLElement)
+
+
+dOMHTMLTableElementCreateTHead ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLElement
+dOMHTMLTableElementCreateTHead _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_create_t_head _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_create_t_head" result
+    result' <- (newObject DOMHTMLElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::delete_caption
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_delete_caption" webkit_dom_html_table_element_delete_caption :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO ()
+
+
+dOMHTMLTableElementDeleteCaption ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMHTMLTableElementDeleteCaption _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_table_element_delete_caption _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLTableElement::delete_row
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_delete_row" webkit_dom_html_table_element_delete_row :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    Int64 ->                                -- index : TBasicType TInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMHTMLTableElementDeleteRow ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- index
+    m ()
+dOMHTMLTableElementDeleteRow _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        propagateGError $ webkit_dom_html_table_element_delete_row _obj' index
+        touchManagedPtr _obj
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMHTMLTableElement::delete_t_foot
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_delete_t_foot" webkit_dom_html_table_element_delete_t_foot :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO ()
+
+
+dOMHTMLTableElementDeleteTFoot ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMHTMLTableElementDeleteTFoot _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_table_element_delete_t_foot _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLTableElement::delete_t_head
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_delete_t_head" webkit_dom_html_table_element_delete_t_head :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO ()
+
+
+dOMHTMLTableElementDeleteTHead ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMHTMLTableElementDeleteTHead _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_table_element_delete_t_head _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLTableElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_get_align" webkit_dom_html_table_element_get_align :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO CString
+
+
+dOMHTMLTableElementGetAlign ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::get_bg_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_get_bg_color" webkit_dom_html_table_element_get_bg_color :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO CString
+
+
+dOMHTMLTableElementGetBgColor ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableElementGetBgColor _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_get_bg_color _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_get_bg_color" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::get_border
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_get_border" webkit_dom_html_table_element_get_border :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO CString
+
+
+dOMHTMLTableElementGetBorder ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableElementGetBorder _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_get_border _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_get_border" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::get_caption
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLTableCaptionElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_get_caption" webkit_dom_html_table_element_get_caption :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO (Ptr DOMHTMLTableCaptionElement)
+
+
+dOMHTMLTableElementGetCaption ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLTableCaptionElement
+dOMHTMLTableElementGetCaption _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_get_caption _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_get_caption" result
+    result' <- (newObject DOMHTMLTableCaptionElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::get_cell_padding
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_get_cell_padding" webkit_dom_html_table_element_get_cell_padding :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO CString
+
+
+dOMHTMLTableElementGetCellPadding ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableElementGetCellPadding _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_get_cell_padding _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_get_cell_padding" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::get_cell_spacing
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_get_cell_spacing" webkit_dom_html_table_element_get_cell_spacing :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO CString
+
+
+dOMHTMLTableElementGetCellSpacing ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableElementGetCellSpacing _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_get_cell_spacing _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_get_cell_spacing" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::get_rows
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_get_rows" webkit_dom_html_table_element_get_rows :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO (Ptr DOMHTMLCollection)
+
+
+dOMHTMLTableElementGetRows ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLCollection
+dOMHTMLTableElementGetRows _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_get_rows _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_get_rows" result
+    result' <- (wrapObject DOMHTMLCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::get_rules
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_get_rules" webkit_dom_html_table_element_get_rules :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO CString
+
+
+dOMHTMLTableElementGetRules ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableElementGetRules _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_get_rules _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_get_rules" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::get_summary
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_get_summary" webkit_dom_html_table_element_get_summary :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO CString
+
+
+dOMHTMLTableElementGetSummary ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableElementGetSummary _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_get_summary _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_get_summary" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::get_t_bodies
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_get_t_bodies" webkit_dom_html_table_element_get_t_bodies :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO (Ptr DOMHTMLCollection)
+
+
+dOMHTMLTableElementGetTBodies ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLCollection
+dOMHTMLTableElementGetTBodies _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_get_t_bodies _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_get_t_bodies" result
+    result' <- (wrapObject DOMHTMLCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::get_t_foot
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_get_t_foot" webkit_dom_html_table_element_get_t_foot :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO (Ptr DOMHTMLTableSectionElement)
+
+
+dOMHTMLTableElementGetTFoot ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLTableSectionElement
+dOMHTMLTableElementGetTFoot _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_get_t_foot _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_get_t_foot" result
+    result' <- (newObject DOMHTMLTableSectionElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::get_t_head
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_get_t_head" webkit_dom_html_table_element_get_t_head :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO (Ptr DOMHTMLTableSectionElement)
+
+
+dOMHTMLTableElementGetTHead ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLTableSectionElement
+dOMHTMLTableElementGetTHead _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_get_t_head _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_get_t_head" result
+    result' <- (newObject DOMHTMLTableSectionElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::get_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_get_width" webkit_dom_html_table_element_get_width :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    IO CString
+
+
+dOMHTMLTableElementGetWidth ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableElementGetWidth _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_element_get_width _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_element_get_width" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableElement::insert_row
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_insert_row" webkit_dom_html_table_element_insert_row :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    Int64 ->                                -- index : TBasicType TInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMHTMLElement)
+
+
+dOMHTMLTableElementInsertRow ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- index
+    m DOMHTMLElement
+dOMHTMLTableElementInsertRow _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_html_table_element_insert_row _obj' index
+        checkUnexpectedReturnNULL "webkit_dom_html_table_element_insert_row" result
+        result' <- (newObject DOMHTMLElement) result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMHTMLTableElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_set_align" webkit_dom_html_table_element_set_align :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableElementSetAlign ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableElement::set_bg_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_set_bg_color" webkit_dom_html_table_element_set_bg_color :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableElementSetBgColor ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableElementSetBgColor _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_element_set_bg_color _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableElement::set_border
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_set_border" webkit_dom_html_table_element_set_border :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableElementSetBorder ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableElementSetBorder _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_element_set_border _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableElement::set_caption
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCaptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableCaptionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_set_caption" webkit_dom_html_table_element_set_caption :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    Ptr DOMHTMLTableCaptionElement ->       -- value : TInterface "WebKit2WebExtension" "DOMHTMLTableCaptionElement"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMHTMLTableElementSetCaption ::
+    (MonadIO m, DOMHTMLTableElementK a, DOMHTMLTableCaptionElementK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- value
+    m ()
+dOMHTMLTableElementSetCaption _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = unsafeManagedPtrCastPtr value
+    onException (do
+        propagateGError $ webkit_dom_html_table_element_set_caption _obj' value'
+        touchManagedPtr _obj
+        touchManagedPtr value
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMHTMLTableElement::set_cell_padding
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_set_cell_padding" webkit_dom_html_table_element_set_cell_padding :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableElementSetCellPadding ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableElementSetCellPadding _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_element_set_cell_padding _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableElement::set_cell_spacing
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_set_cell_spacing" webkit_dom_html_table_element_set_cell_spacing :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableElementSetCellSpacing ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableElementSetCellSpacing _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_element_set_cell_spacing _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableElement::set_rules
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_set_rules" webkit_dom_html_table_element_set_rules :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableElementSetRules ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableElementSetRules _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_element_set_rules _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableElement::set_summary
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_set_summary" webkit_dom_html_table_element_set_summary :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableElementSetSummary ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableElementSetSummary _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_element_set_summary _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableElement::set_t_foot
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_set_t_foot" webkit_dom_html_table_element_set_t_foot :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    Ptr DOMHTMLTableSectionElement ->       -- value : TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMHTMLTableElementSetTFoot ::
+    (MonadIO m, DOMHTMLTableElementK a, DOMHTMLTableSectionElementK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- value
+    m ()
+dOMHTMLTableElementSetTFoot _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = unsafeManagedPtrCastPtr value
+    onException (do
+        propagateGError $ webkit_dom_html_table_element_set_t_foot _obj' value'
+        touchManagedPtr _obj
+        touchManagedPtr value
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMHTMLTableElement::set_t_head
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_set_t_head" webkit_dom_html_table_element_set_t_head :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    Ptr DOMHTMLTableSectionElement ->       -- value : TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMHTMLTableElementSetTHead ::
+    (MonadIO m, DOMHTMLTableElementK a, DOMHTMLTableSectionElementK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- value
+    m ()
+dOMHTMLTableElementSetTHead _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = unsafeManagedPtrCastPtr value
+    onException (do
+        propagateGError $ webkit_dom_html_table_element_set_t_head _obj' value'
+        touchManagedPtr _obj
+        touchManagedPtr value
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMHTMLTableElement::set_width
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_element_set_width" webkit_dom_html_table_element_set_width :: 
+    Ptr DOMHTMLTableElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableElementSetWidth ::
+    (MonadIO m, DOMHTMLTableElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableElementSetWidth _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_element_set_width _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTableElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLTableElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTableElement.hs-boot
@@ -0,0 +1,27 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLTableElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLTableElement = DOMHTMLTableElement (ForeignPtr DOMHTMLTableElement)
+instance GObject DOMHTMLTableElement where
+class GObject o => DOMHTMLTableElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTableElement o) => DOMHTMLTableElementK o
+data DOMHTMLTableElementAlignPropertyInfo
+data DOMHTMLTableElementBgColorPropertyInfo
+data DOMHTMLTableElementBorderPropertyInfo
+data DOMHTMLTableElementCaptionPropertyInfo
+data DOMHTMLTableElementCellPaddingPropertyInfo
+data DOMHTMLTableElementCellSpacingPropertyInfo
+data DOMHTMLTableElementFramePropertyInfo
+data DOMHTMLTableElementRowsPropertyInfo
+data DOMHTMLTableElementRulesPropertyInfo
+data DOMHTMLTableElementSummaryPropertyInfo
+data DOMHTMLTableElementTBodiesPropertyInfo
+data DOMHTMLTableElementTFootPropertyInfo
+data DOMHTMLTableElementTHeadPropertyInfo
+data DOMHTMLTableElementWidthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTableRowElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLTableRowElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTableRowElement.hs
@@ -0,0 +1,761 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLTableRowElement
+    ( 
+
+-- * Exported types
+    DOMHTMLTableRowElement(..)              ,
+    DOMHTMLTableRowElementK                 ,
+    toDOMHTMLTableRowElement                ,
+    noDOMHTMLTableRowElement                ,
+
+
+ -- * Methods
+-- ** dOMHTMLTableRowElementDeleteCell
+    dOMHTMLTableRowElementDeleteCell        ,
+
+
+-- ** dOMHTMLTableRowElementGetAlign
+    dOMHTMLTableRowElementGetAlign          ,
+
+
+-- ** dOMHTMLTableRowElementGetBgColor
+    dOMHTMLTableRowElementGetBgColor        ,
+
+
+-- ** dOMHTMLTableRowElementGetCells
+    dOMHTMLTableRowElementGetCells          ,
+
+
+-- ** dOMHTMLTableRowElementGetCh
+    dOMHTMLTableRowElementGetCh             ,
+
+
+-- ** dOMHTMLTableRowElementGetChOff
+    dOMHTMLTableRowElementGetChOff          ,
+
+
+-- ** dOMHTMLTableRowElementGetRowIndex
+    dOMHTMLTableRowElementGetRowIndex       ,
+
+
+-- ** dOMHTMLTableRowElementGetSectionRowIndex
+    dOMHTMLTableRowElementGetSectionRowIndex,
+
+
+-- ** dOMHTMLTableRowElementGetVAlign
+    dOMHTMLTableRowElementGetVAlign         ,
+
+
+-- ** dOMHTMLTableRowElementInsertCell
+    dOMHTMLTableRowElementInsertCell        ,
+
+
+-- ** dOMHTMLTableRowElementSetAlign
+    dOMHTMLTableRowElementSetAlign          ,
+
+
+-- ** dOMHTMLTableRowElementSetBgColor
+    dOMHTMLTableRowElementSetBgColor        ,
+
+
+-- ** dOMHTMLTableRowElementSetCh
+    dOMHTMLTableRowElementSetCh             ,
+
+
+-- ** dOMHTMLTableRowElementSetChOff
+    dOMHTMLTableRowElementSetChOff          ,
+
+
+-- ** dOMHTMLTableRowElementSetVAlign
+    dOMHTMLTableRowElementSetVAlign         ,
+
+
+
+
+ -- * Properties
+-- ** Align
+    DOMHTMLTableRowElementAlignPropertyInfo ,
+    constructDOMHTMLTableRowElementAlign    ,
+    getDOMHTMLTableRowElementAlign          ,
+    setDOMHTMLTableRowElementAlign          ,
+
+
+-- ** BgColor
+    DOMHTMLTableRowElementBgColorPropertyInfo,
+    constructDOMHTMLTableRowElementBgColor  ,
+    getDOMHTMLTableRowElementBgColor        ,
+    setDOMHTMLTableRowElementBgColor        ,
+
+
+-- ** Cells
+    DOMHTMLTableRowElementCellsPropertyInfo ,
+    getDOMHTMLTableRowElementCells          ,
+
+
+-- ** Ch
+    DOMHTMLTableRowElementChPropertyInfo    ,
+    constructDOMHTMLTableRowElementCh       ,
+    getDOMHTMLTableRowElementCh             ,
+    setDOMHTMLTableRowElementCh             ,
+
+
+-- ** ChOff
+    DOMHTMLTableRowElementChOffPropertyInfo ,
+    constructDOMHTMLTableRowElementChOff    ,
+    getDOMHTMLTableRowElementChOff          ,
+    setDOMHTMLTableRowElementChOff          ,
+
+
+-- ** RowIndex
+    DOMHTMLTableRowElementRowIndexPropertyInfo,
+    getDOMHTMLTableRowElementRowIndex       ,
+
+
+-- ** SectionRowIndex
+    DOMHTMLTableRowElementSectionRowIndexPropertyInfo,
+    getDOMHTMLTableRowElementSectionRowIndex,
+
+
+-- ** VAlign
+    DOMHTMLTableRowElementVAlignPropertyInfo,
+    constructDOMHTMLTableRowElementVAlign   ,
+    getDOMHTMLTableRowElementVAlign         ,
+    setDOMHTMLTableRowElementVAlign         ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLTableRowElement = DOMHTMLTableRowElement (ForeignPtr DOMHTMLTableRowElement)
+foreign import ccall "webkit_dom_html_table_row_element_get_type"
+    c_webkit_dom_html_table_row_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLTableRowElement = DOMHTMLTableRowElementParentTypes
+type DOMHTMLTableRowElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLTableRowElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_table_row_element_get_type
+    
+
+class GObject o => DOMHTMLTableRowElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTableRowElement o) => DOMHTMLTableRowElementK o
+
+toDOMHTMLTableRowElement :: DOMHTMLTableRowElementK o => o -> IO DOMHTMLTableRowElement
+toDOMHTMLTableRowElement = unsafeCastTo DOMHTMLTableRowElement
+
+noDOMHTMLTableRowElement :: Maybe DOMHTMLTableRowElement
+noDOMHTMLTableRowElement = Nothing
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableRowElementAlign :: (MonadIO m, DOMHTMLTableRowElementK o) => o -> m T.Text
+getDOMHTMLTableRowElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLTableRowElementAlign :: (MonadIO m, DOMHTMLTableRowElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableRowElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLTableRowElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableRowElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLTableRowElementAlignPropertyInfo
+instance AttrInfo DOMHTMLTableRowElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableRowElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableRowElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableRowElementAlignPropertyInfo = DOMHTMLTableRowElementK
+    type AttrGetType DOMHTMLTableRowElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableRowElementAlignPropertyInfo = "DOMHTMLTableRowElement::align"
+    attrGet _ = getDOMHTMLTableRowElementAlign
+    attrSet _ = setDOMHTMLTableRowElementAlign
+    attrConstruct _ = constructDOMHTMLTableRowElementAlign
+
+-- VVV Prop "bg-color"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableRowElementBgColor :: (MonadIO m, DOMHTMLTableRowElementK o) => o -> m T.Text
+getDOMHTMLTableRowElementBgColor obj = liftIO $ getObjectPropertyString obj "bg-color"
+
+setDOMHTMLTableRowElementBgColor :: (MonadIO m, DOMHTMLTableRowElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableRowElementBgColor obj val = liftIO $ setObjectPropertyString obj "bg-color" val
+
+constructDOMHTMLTableRowElementBgColor :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableRowElementBgColor val = constructObjectPropertyString "bg-color" val
+
+data DOMHTMLTableRowElementBgColorPropertyInfo
+instance AttrInfo DOMHTMLTableRowElementBgColorPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableRowElementBgColorPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableRowElementBgColorPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableRowElementBgColorPropertyInfo = DOMHTMLTableRowElementK
+    type AttrGetType DOMHTMLTableRowElementBgColorPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableRowElementBgColorPropertyInfo = "DOMHTMLTableRowElement::bg-color"
+    attrGet _ = getDOMHTMLTableRowElementBgColor
+    attrSet _ = setDOMHTMLTableRowElementBgColor
+    attrConstruct _ = constructDOMHTMLTableRowElementBgColor
+
+-- VVV Prop "cells"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTableRowElementCells :: (MonadIO m, DOMHTMLTableRowElementK o) => o -> m DOMHTMLCollection
+getDOMHTMLTableRowElementCells obj = liftIO $ getObjectPropertyObject obj "cells" DOMHTMLCollection
+
+data DOMHTMLTableRowElementCellsPropertyInfo
+instance AttrInfo DOMHTMLTableRowElementCellsPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableRowElementCellsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableRowElementCellsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTableRowElementCellsPropertyInfo = DOMHTMLTableRowElementK
+    type AttrGetType DOMHTMLTableRowElementCellsPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMHTMLTableRowElementCellsPropertyInfo = "DOMHTMLTableRowElement::cells"
+    attrGet _ = getDOMHTMLTableRowElementCells
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "ch"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableRowElementCh :: (MonadIO m, DOMHTMLTableRowElementK o) => o -> m T.Text
+getDOMHTMLTableRowElementCh obj = liftIO $ getObjectPropertyString obj "ch"
+
+setDOMHTMLTableRowElementCh :: (MonadIO m, DOMHTMLTableRowElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableRowElementCh obj val = liftIO $ setObjectPropertyString obj "ch" val
+
+constructDOMHTMLTableRowElementCh :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableRowElementCh val = constructObjectPropertyString "ch" val
+
+data DOMHTMLTableRowElementChPropertyInfo
+instance AttrInfo DOMHTMLTableRowElementChPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableRowElementChPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableRowElementChPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableRowElementChPropertyInfo = DOMHTMLTableRowElementK
+    type AttrGetType DOMHTMLTableRowElementChPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableRowElementChPropertyInfo = "DOMHTMLTableRowElement::ch"
+    attrGet _ = getDOMHTMLTableRowElementCh
+    attrSet _ = setDOMHTMLTableRowElementCh
+    attrConstruct _ = constructDOMHTMLTableRowElementCh
+
+-- VVV Prop "ch-off"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableRowElementChOff :: (MonadIO m, DOMHTMLTableRowElementK o) => o -> m T.Text
+getDOMHTMLTableRowElementChOff obj = liftIO $ getObjectPropertyString obj "ch-off"
+
+setDOMHTMLTableRowElementChOff :: (MonadIO m, DOMHTMLTableRowElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableRowElementChOff obj val = liftIO $ setObjectPropertyString obj "ch-off" val
+
+constructDOMHTMLTableRowElementChOff :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableRowElementChOff val = constructObjectPropertyString "ch-off" val
+
+data DOMHTMLTableRowElementChOffPropertyInfo
+instance AttrInfo DOMHTMLTableRowElementChOffPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableRowElementChOffPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableRowElementChOffPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableRowElementChOffPropertyInfo = DOMHTMLTableRowElementK
+    type AttrGetType DOMHTMLTableRowElementChOffPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableRowElementChOffPropertyInfo = "DOMHTMLTableRowElement::ch-off"
+    attrGet _ = getDOMHTMLTableRowElementChOff
+    attrSet _ = setDOMHTMLTableRowElementChOff
+    attrConstruct _ = constructDOMHTMLTableRowElementChOff
+
+-- VVV Prop "row-index"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTableRowElementRowIndex :: (MonadIO m, DOMHTMLTableRowElementK o) => o -> m Int64
+getDOMHTMLTableRowElementRowIndex obj = liftIO $ getObjectPropertyInt64 obj "row-index"
+
+data DOMHTMLTableRowElementRowIndexPropertyInfo
+instance AttrInfo DOMHTMLTableRowElementRowIndexPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableRowElementRowIndexPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableRowElementRowIndexPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTableRowElementRowIndexPropertyInfo = DOMHTMLTableRowElementK
+    type AttrGetType DOMHTMLTableRowElementRowIndexPropertyInfo = Int64
+    type AttrLabel DOMHTMLTableRowElementRowIndexPropertyInfo = "DOMHTMLTableRowElement::row-index"
+    attrGet _ = getDOMHTMLTableRowElementRowIndex
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "section-row-index"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTableRowElementSectionRowIndex :: (MonadIO m, DOMHTMLTableRowElementK o) => o -> m Int64
+getDOMHTMLTableRowElementSectionRowIndex obj = liftIO $ getObjectPropertyInt64 obj "section-row-index"
+
+data DOMHTMLTableRowElementSectionRowIndexPropertyInfo
+instance AttrInfo DOMHTMLTableRowElementSectionRowIndexPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableRowElementSectionRowIndexPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableRowElementSectionRowIndexPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTableRowElementSectionRowIndexPropertyInfo = DOMHTMLTableRowElementK
+    type AttrGetType DOMHTMLTableRowElementSectionRowIndexPropertyInfo = Int64
+    type AttrLabel DOMHTMLTableRowElementSectionRowIndexPropertyInfo = "DOMHTMLTableRowElement::section-row-index"
+    attrGet _ = getDOMHTMLTableRowElementSectionRowIndex
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "v-align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableRowElementVAlign :: (MonadIO m, DOMHTMLTableRowElementK o) => o -> m T.Text
+getDOMHTMLTableRowElementVAlign obj = liftIO $ getObjectPropertyString obj "v-align"
+
+setDOMHTMLTableRowElementVAlign :: (MonadIO m, DOMHTMLTableRowElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableRowElementVAlign obj val = liftIO $ setObjectPropertyString obj "v-align" val
+
+constructDOMHTMLTableRowElementVAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableRowElementVAlign val = constructObjectPropertyString "v-align" val
+
+data DOMHTMLTableRowElementVAlignPropertyInfo
+instance AttrInfo DOMHTMLTableRowElementVAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableRowElementVAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableRowElementVAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableRowElementVAlignPropertyInfo = DOMHTMLTableRowElementK
+    type AttrGetType DOMHTMLTableRowElementVAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableRowElementVAlignPropertyInfo = "DOMHTMLTableRowElement::v-align"
+    attrGet _ = getDOMHTMLTableRowElementVAlign
+    attrSet _ = setDOMHTMLTableRowElementVAlign
+    attrConstruct _ = constructDOMHTMLTableRowElementVAlign
+
+type instance AttributeList DOMHTMLTableRowElement = DOMHTMLTableRowElementAttributeList
+type DOMHTMLTableRowElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLTableRowElementAlignPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("bg-color", DOMHTMLTableRowElementBgColorPropertyInfo), '("cells", DOMHTMLTableRowElementCellsPropertyInfo), '("ch", DOMHTMLTableRowElementChPropertyInfo), '("ch-off", DOMHTMLTableRowElementChOffPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("row-index", DOMHTMLTableRowElementRowIndexPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("section-row-index", DOMHTMLTableRowElementSectionRowIndexPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("v-align", DOMHTMLTableRowElementVAlignPropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLTableRowElement = DOMHTMLTableRowElementSignalList
+type DOMHTMLTableRowElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLTableRowElement::delete_cell
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_row_element_delete_cell" webkit_dom_html_table_row_element_delete_cell :: 
+    Ptr DOMHTMLTableRowElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement"
+    Int64 ->                                -- index : TBasicType TInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMHTMLTableRowElementDeleteCell ::
+    (MonadIO m, DOMHTMLTableRowElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- index
+    m ()
+dOMHTMLTableRowElementDeleteCell _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        propagateGError $ webkit_dom_html_table_row_element_delete_cell _obj' index
+        touchManagedPtr _obj
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMHTMLTableRowElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_row_element_get_align" webkit_dom_html_table_row_element_get_align :: 
+    Ptr DOMHTMLTableRowElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement"
+    IO CString
+
+
+dOMHTMLTableRowElementGetAlign ::
+    (MonadIO m, DOMHTMLTableRowElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableRowElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_row_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_row_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableRowElement::get_bg_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_row_element_get_bg_color" webkit_dom_html_table_row_element_get_bg_color :: 
+    Ptr DOMHTMLTableRowElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement"
+    IO CString
+
+
+dOMHTMLTableRowElementGetBgColor ::
+    (MonadIO m, DOMHTMLTableRowElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableRowElementGetBgColor _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_row_element_get_bg_color _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_row_element_get_bg_color" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableRowElement::get_cells
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_row_element_get_cells" webkit_dom_html_table_row_element_get_cells :: 
+    Ptr DOMHTMLTableRowElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement"
+    IO (Ptr DOMHTMLCollection)
+
+
+dOMHTMLTableRowElementGetCells ::
+    (MonadIO m, DOMHTMLTableRowElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLCollection
+dOMHTMLTableRowElementGetCells _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_row_element_get_cells _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_row_element_get_cells" result
+    result' <- (wrapObject DOMHTMLCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableRowElement::get_ch
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_row_element_get_ch" webkit_dom_html_table_row_element_get_ch :: 
+    Ptr DOMHTMLTableRowElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement"
+    IO CString
+
+
+dOMHTMLTableRowElementGetCh ::
+    (MonadIO m, DOMHTMLTableRowElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableRowElementGetCh _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_row_element_get_ch _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_row_element_get_ch" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableRowElement::get_ch_off
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_row_element_get_ch_off" webkit_dom_html_table_row_element_get_ch_off :: 
+    Ptr DOMHTMLTableRowElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement"
+    IO CString
+
+
+dOMHTMLTableRowElementGetChOff ::
+    (MonadIO m, DOMHTMLTableRowElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableRowElementGetChOff _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_row_element_get_ch_off _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_row_element_get_ch_off" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableRowElement::get_row_index
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_row_element_get_row_index" webkit_dom_html_table_row_element_get_row_index :: 
+    Ptr DOMHTMLTableRowElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement"
+    IO Int64
+
+
+dOMHTMLTableRowElementGetRowIndex ::
+    (MonadIO m, DOMHTMLTableRowElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLTableRowElementGetRowIndex _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_row_element_get_row_index _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLTableRowElement::get_section_row_index
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_row_element_get_section_row_index" webkit_dom_html_table_row_element_get_section_row_index :: 
+    Ptr DOMHTMLTableRowElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement"
+    IO Int64
+
+
+dOMHTMLTableRowElementGetSectionRowIndex ::
+    (MonadIO m, DOMHTMLTableRowElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLTableRowElementGetSectionRowIndex _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_row_element_get_section_row_index _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLTableRowElement::get_v_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_row_element_get_v_align" webkit_dom_html_table_row_element_get_v_align :: 
+    Ptr DOMHTMLTableRowElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement"
+    IO CString
+
+
+dOMHTMLTableRowElementGetVAlign ::
+    (MonadIO m, DOMHTMLTableRowElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableRowElementGetVAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_row_element_get_v_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_row_element_get_v_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableRowElement::insert_cell
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_row_element_insert_cell" webkit_dom_html_table_row_element_insert_cell :: 
+    Ptr DOMHTMLTableRowElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement"
+    Int64 ->                                -- index : TBasicType TInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMHTMLElement)
+
+
+dOMHTMLTableRowElementInsertCell ::
+    (MonadIO m, DOMHTMLTableRowElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- index
+    m DOMHTMLElement
+dOMHTMLTableRowElementInsertCell _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_html_table_row_element_insert_cell _obj' index
+        checkUnexpectedReturnNULL "webkit_dom_html_table_row_element_insert_cell" result
+        result' <- (newObject DOMHTMLElement) result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMHTMLTableRowElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_row_element_set_align" webkit_dom_html_table_row_element_set_align :: 
+    Ptr DOMHTMLTableRowElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableRowElementSetAlign ::
+    (MonadIO m, DOMHTMLTableRowElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableRowElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_row_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableRowElement::set_bg_color
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_row_element_set_bg_color" webkit_dom_html_table_row_element_set_bg_color :: 
+    Ptr DOMHTMLTableRowElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableRowElementSetBgColor ::
+    (MonadIO m, DOMHTMLTableRowElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableRowElementSetBgColor _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_row_element_set_bg_color _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableRowElement::set_ch
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_row_element_set_ch" webkit_dom_html_table_row_element_set_ch :: 
+    Ptr DOMHTMLTableRowElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableRowElementSetCh ::
+    (MonadIO m, DOMHTMLTableRowElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableRowElementSetCh _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_row_element_set_ch _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableRowElement::set_ch_off
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_row_element_set_ch_off" webkit_dom_html_table_row_element_set_ch_off :: 
+    Ptr DOMHTMLTableRowElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableRowElementSetChOff ::
+    (MonadIO m, DOMHTMLTableRowElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableRowElementSetChOff _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_row_element_set_ch_off _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableRowElement::set_v_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_row_element_set_v_align" webkit_dom_html_table_row_element_set_v_align :: 
+    Ptr DOMHTMLTableRowElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableRowElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableRowElementSetVAlign ::
+    (MonadIO m, DOMHTMLTableRowElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableRowElementSetVAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_row_element_set_v_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTableRowElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLTableRowElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTableRowElement.hs-boot
@@ -0,0 +1,21 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLTableRowElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLTableRowElement = DOMHTMLTableRowElement (ForeignPtr DOMHTMLTableRowElement)
+instance GObject DOMHTMLTableRowElement where
+class GObject o => DOMHTMLTableRowElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTableRowElement o) => DOMHTMLTableRowElementK o
+data DOMHTMLTableRowElementAlignPropertyInfo
+data DOMHTMLTableRowElementBgColorPropertyInfo
+data DOMHTMLTableRowElementCellsPropertyInfo
+data DOMHTMLTableRowElementChPropertyInfo
+data DOMHTMLTableRowElementChOffPropertyInfo
+data DOMHTMLTableRowElementRowIndexPropertyInfo
+data DOMHTMLTableRowElementSectionRowIndexPropertyInfo
+data DOMHTMLTableRowElementVAlignPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTableSectionElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLTableSectionElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTableSectionElement.hs
@@ -0,0 +1,565 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLTableSectionElement
+    ( 
+
+-- * Exported types
+    DOMHTMLTableSectionElement(..)          ,
+    DOMHTMLTableSectionElementK             ,
+    toDOMHTMLTableSectionElement            ,
+    noDOMHTMLTableSectionElement            ,
+
+
+ -- * Methods
+-- ** dOMHTMLTableSectionElementDeleteRow
+    dOMHTMLTableSectionElementDeleteRow     ,
+
+
+-- ** dOMHTMLTableSectionElementGetAlign
+    dOMHTMLTableSectionElementGetAlign      ,
+
+
+-- ** dOMHTMLTableSectionElementGetCh
+    dOMHTMLTableSectionElementGetCh         ,
+
+
+-- ** dOMHTMLTableSectionElementGetChOff
+    dOMHTMLTableSectionElementGetChOff      ,
+
+
+-- ** dOMHTMLTableSectionElementGetRows
+    dOMHTMLTableSectionElementGetRows       ,
+
+
+-- ** dOMHTMLTableSectionElementGetVAlign
+    dOMHTMLTableSectionElementGetVAlign     ,
+
+
+-- ** dOMHTMLTableSectionElementInsertRow
+    dOMHTMLTableSectionElementInsertRow     ,
+
+
+-- ** dOMHTMLTableSectionElementSetAlign
+    dOMHTMLTableSectionElementSetAlign      ,
+
+
+-- ** dOMHTMLTableSectionElementSetCh
+    dOMHTMLTableSectionElementSetCh         ,
+
+
+-- ** dOMHTMLTableSectionElementSetChOff
+    dOMHTMLTableSectionElementSetChOff      ,
+
+
+-- ** dOMHTMLTableSectionElementSetVAlign
+    dOMHTMLTableSectionElementSetVAlign     ,
+
+
+
+
+ -- * Properties
+-- ** Align
+    DOMHTMLTableSectionElementAlignPropertyInfo,
+    constructDOMHTMLTableSectionElementAlign,
+    getDOMHTMLTableSectionElementAlign      ,
+    setDOMHTMLTableSectionElementAlign      ,
+
+
+-- ** Ch
+    DOMHTMLTableSectionElementChPropertyInfo,
+    constructDOMHTMLTableSectionElementCh   ,
+    getDOMHTMLTableSectionElementCh         ,
+    setDOMHTMLTableSectionElementCh         ,
+
+
+-- ** ChOff
+    DOMHTMLTableSectionElementChOffPropertyInfo,
+    constructDOMHTMLTableSectionElementChOff,
+    getDOMHTMLTableSectionElementChOff      ,
+    setDOMHTMLTableSectionElementChOff      ,
+
+
+-- ** Rows
+    DOMHTMLTableSectionElementRowsPropertyInfo,
+    getDOMHTMLTableSectionElementRows       ,
+
+
+-- ** VAlign
+    DOMHTMLTableSectionElementVAlignPropertyInfo,
+    constructDOMHTMLTableSectionElementVAlign,
+    getDOMHTMLTableSectionElementVAlign     ,
+    setDOMHTMLTableSectionElementVAlign     ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLTableSectionElement = DOMHTMLTableSectionElement (ForeignPtr DOMHTMLTableSectionElement)
+foreign import ccall "webkit_dom_html_table_section_element_get_type"
+    c_webkit_dom_html_table_section_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLTableSectionElement = DOMHTMLTableSectionElementParentTypes
+type DOMHTMLTableSectionElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLTableSectionElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_table_section_element_get_type
+    
+
+class GObject o => DOMHTMLTableSectionElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTableSectionElement o) => DOMHTMLTableSectionElementK o
+
+toDOMHTMLTableSectionElement :: DOMHTMLTableSectionElementK o => o -> IO DOMHTMLTableSectionElement
+toDOMHTMLTableSectionElement = unsafeCastTo DOMHTMLTableSectionElement
+
+noDOMHTMLTableSectionElement :: Maybe DOMHTMLTableSectionElement
+noDOMHTMLTableSectionElement = Nothing
+
+-- VVV Prop "align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableSectionElementAlign :: (MonadIO m, DOMHTMLTableSectionElementK o) => o -> m T.Text
+getDOMHTMLTableSectionElementAlign obj = liftIO $ getObjectPropertyString obj "align"
+
+setDOMHTMLTableSectionElementAlign :: (MonadIO m, DOMHTMLTableSectionElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableSectionElementAlign obj val = liftIO $ setObjectPropertyString obj "align" val
+
+constructDOMHTMLTableSectionElementAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableSectionElementAlign val = constructObjectPropertyString "align" val
+
+data DOMHTMLTableSectionElementAlignPropertyInfo
+instance AttrInfo DOMHTMLTableSectionElementAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableSectionElementAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableSectionElementAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableSectionElementAlignPropertyInfo = DOMHTMLTableSectionElementK
+    type AttrGetType DOMHTMLTableSectionElementAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableSectionElementAlignPropertyInfo = "DOMHTMLTableSectionElement::align"
+    attrGet _ = getDOMHTMLTableSectionElementAlign
+    attrSet _ = setDOMHTMLTableSectionElementAlign
+    attrConstruct _ = constructDOMHTMLTableSectionElementAlign
+
+-- VVV Prop "ch"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableSectionElementCh :: (MonadIO m, DOMHTMLTableSectionElementK o) => o -> m T.Text
+getDOMHTMLTableSectionElementCh obj = liftIO $ getObjectPropertyString obj "ch"
+
+setDOMHTMLTableSectionElementCh :: (MonadIO m, DOMHTMLTableSectionElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableSectionElementCh obj val = liftIO $ setObjectPropertyString obj "ch" val
+
+constructDOMHTMLTableSectionElementCh :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableSectionElementCh val = constructObjectPropertyString "ch" val
+
+data DOMHTMLTableSectionElementChPropertyInfo
+instance AttrInfo DOMHTMLTableSectionElementChPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableSectionElementChPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableSectionElementChPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableSectionElementChPropertyInfo = DOMHTMLTableSectionElementK
+    type AttrGetType DOMHTMLTableSectionElementChPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableSectionElementChPropertyInfo = "DOMHTMLTableSectionElement::ch"
+    attrGet _ = getDOMHTMLTableSectionElementCh
+    attrSet _ = setDOMHTMLTableSectionElementCh
+    attrConstruct _ = constructDOMHTMLTableSectionElementCh
+
+-- VVV Prop "ch-off"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableSectionElementChOff :: (MonadIO m, DOMHTMLTableSectionElementK o) => o -> m T.Text
+getDOMHTMLTableSectionElementChOff obj = liftIO $ getObjectPropertyString obj "ch-off"
+
+setDOMHTMLTableSectionElementChOff :: (MonadIO m, DOMHTMLTableSectionElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableSectionElementChOff obj val = liftIO $ setObjectPropertyString obj "ch-off" val
+
+constructDOMHTMLTableSectionElementChOff :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableSectionElementChOff val = constructObjectPropertyString "ch-off" val
+
+data DOMHTMLTableSectionElementChOffPropertyInfo
+instance AttrInfo DOMHTMLTableSectionElementChOffPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableSectionElementChOffPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableSectionElementChOffPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableSectionElementChOffPropertyInfo = DOMHTMLTableSectionElementK
+    type AttrGetType DOMHTMLTableSectionElementChOffPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableSectionElementChOffPropertyInfo = "DOMHTMLTableSectionElement::ch-off"
+    attrGet _ = getDOMHTMLTableSectionElementChOff
+    attrSet _ = setDOMHTMLTableSectionElementChOff
+    attrConstruct _ = constructDOMHTMLTableSectionElementChOff
+
+-- VVV Prop "rows"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTableSectionElementRows :: (MonadIO m, DOMHTMLTableSectionElementK o) => o -> m DOMHTMLCollection
+getDOMHTMLTableSectionElementRows obj = liftIO $ getObjectPropertyObject obj "rows" DOMHTMLCollection
+
+data DOMHTMLTableSectionElementRowsPropertyInfo
+instance AttrInfo DOMHTMLTableSectionElementRowsPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableSectionElementRowsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableSectionElementRowsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTableSectionElementRowsPropertyInfo = DOMHTMLTableSectionElementK
+    type AttrGetType DOMHTMLTableSectionElementRowsPropertyInfo = DOMHTMLCollection
+    type AttrLabel DOMHTMLTableSectionElementRowsPropertyInfo = "DOMHTMLTableSectionElement::rows"
+    attrGet _ = getDOMHTMLTableSectionElementRows
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "v-align"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTableSectionElementVAlign :: (MonadIO m, DOMHTMLTableSectionElementK o) => o -> m T.Text
+getDOMHTMLTableSectionElementVAlign obj = liftIO $ getObjectPropertyString obj "v-align"
+
+setDOMHTMLTableSectionElementVAlign :: (MonadIO m, DOMHTMLTableSectionElementK o) => o -> T.Text -> m ()
+setDOMHTMLTableSectionElementVAlign obj val = liftIO $ setObjectPropertyString obj "v-align" val
+
+constructDOMHTMLTableSectionElementVAlign :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTableSectionElementVAlign val = constructObjectPropertyString "v-align" val
+
+data DOMHTMLTableSectionElementVAlignPropertyInfo
+instance AttrInfo DOMHTMLTableSectionElementVAlignPropertyInfo where
+    type AttrAllowedOps DOMHTMLTableSectionElementVAlignPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTableSectionElementVAlignPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTableSectionElementVAlignPropertyInfo = DOMHTMLTableSectionElementK
+    type AttrGetType DOMHTMLTableSectionElementVAlignPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTableSectionElementVAlignPropertyInfo = "DOMHTMLTableSectionElement::v-align"
+    attrGet _ = getDOMHTMLTableSectionElementVAlign
+    attrSet _ = setDOMHTMLTableSectionElementVAlign
+    attrConstruct _ = constructDOMHTMLTableSectionElementVAlign
+
+type instance AttributeList DOMHTMLTableSectionElement = DOMHTMLTableSectionElementAttributeList
+type DOMHTMLTableSectionElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("align", DOMHTMLTableSectionElementAlignPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("ch", DOMHTMLTableSectionElementChPropertyInfo), '("ch-off", DOMHTMLTableSectionElementChOffPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("rows", DOMHTMLTableSectionElementRowsPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("v-align", DOMHTMLTableSectionElementVAlignPropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLTableSectionElement = DOMHTMLTableSectionElementSignalList
+type DOMHTMLTableSectionElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLTableSectionElement::delete_row
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_section_element_delete_row" webkit_dom_html_table_section_element_delete_row :: 
+    Ptr DOMHTMLTableSectionElement ->       -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+    Int64 ->                                -- index : TBasicType TInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMHTMLTableSectionElementDeleteRow ::
+    (MonadIO m, DOMHTMLTableSectionElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- index
+    m ()
+dOMHTMLTableSectionElementDeleteRow _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        propagateGError $ webkit_dom_html_table_section_element_delete_row _obj' index
+        touchManagedPtr _obj
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMHTMLTableSectionElement::get_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_section_element_get_align" webkit_dom_html_table_section_element_get_align :: 
+    Ptr DOMHTMLTableSectionElement ->       -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+    IO CString
+
+
+dOMHTMLTableSectionElementGetAlign ::
+    (MonadIO m, DOMHTMLTableSectionElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableSectionElementGetAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_section_element_get_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_section_element_get_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableSectionElement::get_ch
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_section_element_get_ch" webkit_dom_html_table_section_element_get_ch :: 
+    Ptr DOMHTMLTableSectionElement ->       -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+    IO CString
+
+
+dOMHTMLTableSectionElementGetCh ::
+    (MonadIO m, DOMHTMLTableSectionElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableSectionElementGetCh _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_section_element_get_ch _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_section_element_get_ch" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableSectionElement::get_ch_off
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_section_element_get_ch_off" webkit_dom_html_table_section_element_get_ch_off :: 
+    Ptr DOMHTMLTableSectionElement ->       -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+    IO CString
+
+
+dOMHTMLTableSectionElementGetChOff ::
+    (MonadIO m, DOMHTMLTableSectionElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableSectionElementGetChOff _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_section_element_get_ch_off _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_section_element_get_ch_off" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableSectionElement::get_rows
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLCollection"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_section_element_get_rows" webkit_dom_html_table_section_element_get_rows :: 
+    Ptr DOMHTMLTableSectionElement ->       -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+    IO (Ptr DOMHTMLCollection)
+
+
+dOMHTMLTableSectionElementGetRows ::
+    (MonadIO m, DOMHTMLTableSectionElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLCollection
+dOMHTMLTableSectionElementGetRows _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_section_element_get_rows _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_section_element_get_rows" result
+    result' <- (wrapObject DOMHTMLCollection) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableSectionElement::get_v_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_section_element_get_v_align" webkit_dom_html_table_section_element_get_v_align :: 
+    Ptr DOMHTMLTableSectionElement ->       -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+    IO CString
+
+
+dOMHTMLTableSectionElementGetVAlign ::
+    (MonadIO m, DOMHTMLTableSectionElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTableSectionElementGetVAlign _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_table_section_element_get_v_align _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_table_section_element_get_v_align" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTableSectionElement::insert_row
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLElement"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_section_element_insert_row" webkit_dom_html_table_section_element_insert_row :: 
+    Ptr DOMHTMLTableSectionElement ->       -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+    Int64 ->                                -- index : TBasicType TInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMHTMLElement)
+
+
+dOMHTMLTableSectionElementInsertRow ::
+    (MonadIO m, DOMHTMLTableSectionElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- index
+    m DOMHTMLElement
+dOMHTMLTableSectionElementInsertRow _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_html_table_section_element_insert_row _obj' index
+        checkUnexpectedReturnNULL "webkit_dom_html_table_section_element_insert_row" result
+        result' <- (newObject DOMHTMLElement) result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMHTMLTableSectionElement::set_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_section_element_set_align" webkit_dom_html_table_section_element_set_align :: 
+    Ptr DOMHTMLTableSectionElement ->       -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableSectionElementSetAlign ::
+    (MonadIO m, DOMHTMLTableSectionElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableSectionElementSetAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_section_element_set_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableSectionElement::set_ch
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_section_element_set_ch" webkit_dom_html_table_section_element_set_ch :: 
+    Ptr DOMHTMLTableSectionElement ->       -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableSectionElementSetCh ::
+    (MonadIO m, DOMHTMLTableSectionElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableSectionElementSetCh _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_section_element_set_ch _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableSectionElement::set_ch_off
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_section_element_set_ch_off" webkit_dom_html_table_section_element_set_ch_off :: 
+    Ptr DOMHTMLTableSectionElement ->       -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableSectionElementSetChOff ::
+    (MonadIO m, DOMHTMLTableSectionElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableSectionElementSetChOff _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_section_element_set_ch_off _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTableSectionElement::set_v_align
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_table_section_element_set_v_align" webkit_dom_html_table_section_element_set_v_align :: 
+    Ptr DOMHTMLTableSectionElement ->       -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTableSectionElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTableSectionElementSetVAlign ::
+    (MonadIO m, DOMHTMLTableSectionElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTableSectionElementSetVAlign _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_table_section_element_set_v_align _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTableSectionElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLTableSectionElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTableSectionElement.hs-boot
@@ -0,0 +1,18 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLTableSectionElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLTableSectionElement = DOMHTMLTableSectionElement (ForeignPtr DOMHTMLTableSectionElement)
+instance GObject DOMHTMLTableSectionElement where
+class GObject o => DOMHTMLTableSectionElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTableSectionElement o) => DOMHTMLTableSectionElementK o
+data DOMHTMLTableSectionElementAlignPropertyInfo
+data DOMHTMLTableSectionElementChPropertyInfo
+data DOMHTMLTableSectionElementChOffPropertyInfo
+data DOMHTMLTableSectionElementRowsPropertyInfo
+data DOMHTMLTableSectionElementVAlignPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTextAreaElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLTextAreaElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTextAreaElement.hs
@@ -0,0 +1,1544 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLTextAreaElement
+    ( 
+
+-- * Exported types
+    DOMHTMLTextAreaElement(..)              ,
+    DOMHTMLTextAreaElementK                 ,
+    toDOMHTMLTextAreaElement                ,
+    noDOMHTMLTextAreaElement                ,
+
+
+ -- * Methods
+-- ** dOMHTMLTextAreaElementGetAreaType
+    dOMHTMLTextAreaElementGetAreaType       ,
+
+
+-- ** dOMHTMLTextAreaElementGetAutofocus
+    dOMHTMLTextAreaElementGetAutofocus      ,
+
+
+-- ** dOMHTMLTextAreaElementGetCols
+    dOMHTMLTextAreaElementGetCols           ,
+
+
+-- ** dOMHTMLTextAreaElementGetDefaultValue
+    dOMHTMLTextAreaElementGetDefaultValue   ,
+
+
+-- ** dOMHTMLTextAreaElementGetDisabled
+    dOMHTMLTextAreaElementGetDisabled       ,
+
+
+-- ** dOMHTMLTextAreaElementGetForm
+    dOMHTMLTextAreaElementGetForm           ,
+
+
+-- ** dOMHTMLTextAreaElementGetName
+    dOMHTMLTextAreaElementGetName           ,
+
+
+-- ** dOMHTMLTextAreaElementGetReadOnly
+    dOMHTMLTextAreaElementGetReadOnly       ,
+
+
+-- ** dOMHTMLTextAreaElementGetRows
+    dOMHTMLTextAreaElementGetRows           ,
+
+
+-- ** dOMHTMLTextAreaElementGetSelectionEnd
+    dOMHTMLTextAreaElementGetSelectionEnd   ,
+
+
+-- ** dOMHTMLTextAreaElementGetSelectionStart
+    dOMHTMLTextAreaElementGetSelectionStart ,
+
+
+-- ** dOMHTMLTextAreaElementGetValue
+    dOMHTMLTextAreaElementGetValue          ,
+
+
+-- ** dOMHTMLTextAreaElementGetWillValidate
+    dOMHTMLTextAreaElementGetWillValidate   ,
+
+
+-- ** dOMHTMLTextAreaElementIsEdited
+    dOMHTMLTextAreaElementIsEdited          ,
+
+
+-- ** dOMHTMLTextAreaElementSelect
+    dOMHTMLTextAreaElementSelect            ,
+
+
+-- ** dOMHTMLTextAreaElementSetAutofocus
+    dOMHTMLTextAreaElementSetAutofocus      ,
+
+
+-- ** dOMHTMLTextAreaElementSetCols
+    dOMHTMLTextAreaElementSetCols           ,
+
+
+-- ** dOMHTMLTextAreaElementSetDefaultValue
+    dOMHTMLTextAreaElementSetDefaultValue   ,
+
+
+-- ** dOMHTMLTextAreaElementSetDisabled
+    dOMHTMLTextAreaElementSetDisabled       ,
+
+
+-- ** dOMHTMLTextAreaElementSetName
+    dOMHTMLTextAreaElementSetName           ,
+
+
+-- ** dOMHTMLTextAreaElementSetReadOnly
+    dOMHTMLTextAreaElementSetReadOnly       ,
+
+
+-- ** dOMHTMLTextAreaElementSetRows
+    dOMHTMLTextAreaElementSetRows           ,
+
+
+-- ** dOMHTMLTextAreaElementSetSelectionEnd
+    dOMHTMLTextAreaElementSetSelectionEnd   ,
+
+
+-- ** dOMHTMLTextAreaElementSetSelectionRange
+    dOMHTMLTextAreaElementSetSelectionRange ,
+
+
+-- ** dOMHTMLTextAreaElementSetSelectionStart
+    dOMHTMLTextAreaElementSetSelectionStart ,
+
+
+-- ** dOMHTMLTextAreaElementSetValue
+    dOMHTMLTextAreaElementSetValue          ,
+
+
+
+
+ -- * Properties
+-- ** Autocapitalize
+    DOMHTMLTextAreaElementAutocapitalizePropertyInfo,
+    constructDOMHTMLTextAreaElementAutocapitalize,
+    getDOMHTMLTextAreaElementAutocapitalize ,
+    setDOMHTMLTextAreaElementAutocapitalize ,
+
+
+-- ** Autocorrect
+    DOMHTMLTextAreaElementAutocorrectPropertyInfo,
+    constructDOMHTMLTextAreaElementAutocorrect,
+    getDOMHTMLTextAreaElementAutocorrect    ,
+    setDOMHTMLTextAreaElementAutocorrect    ,
+
+
+-- ** Autofocus
+    DOMHTMLTextAreaElementAutofocusPropertyInfo,
+    constructDOMHTMLTextAreaElementAutofocus,
+    getDOMHTMLTextAreaElementAutofocus      ,
+    setDOMHTMLTextAreaElementAutofocus      ,
+
+
+-- ** Cols
+    DOMHTMLTextAreaElementColsPropertyInfo  ,
+    constructDOMHTMLTextAreaElementCols     ,
+    getDOMHTMLTextAreaElementCols           ,
+    setDOMHTMLTextAreaElementCols           ,
+
+
+-- ** DefaultValue
+    DOMHTMLTextAreaElementDefaultValuePropertyInfo,
+    constructDOMHTMLTextAreaElementDefaultValue,
+    getDOMHTMLTextAreaElementDefaultValue   ,
+    setDOMHTMLTextAreaElementDefaultValue   ,
+
+
+-- ** DirName
+    DOMHTMLTextAreaElementDirNamePropertyInfo,
+    constructDOMHTMLTextAreaElementDirName  ,
+    getDOMHTMLTextAreaElementDirName        ,
+    setDOMHTMLTextAreaElementDirName        ,
+
+
+-- ** Disabled
+    DOMHTMLTextAreaElementDisabledPropertyInfo,
+    constructDOMHTMLTextAreaElementDisabled ,
+    getDOMHTMLTextAreaElementDisabled       ,
+    setDOMHTMLTextAreaElementDisabled       ,
+
+
+-- ** Form
+    DOMHTMLTextAreaElementFormPropertyInfo  ,
+    getDOMHTMLTextAreaElementForm           ,
+
+
+-- ** Labels
+    DOMHTMLTextAreaElementLabelsPropertyInfo,
+    getDOMHTMLTextAreaElementLabels         ,
+
+
+-- ** MaxLength
+    DOMHTMLTextAreaElementMaxLengthPropertyInfo,
+    constructDOMHTMLTextAreaElementMaxLength,
+    getDOMHTMLTextAreaElementMaxLength      ,
+    setDOMHTMLTextAreaElementMaxLength      ,
+
+
+-- ** Name
+    DOMHTMLTextAreaElementNamePropertyInfo  ,
+    constructDOMHTMLTextAreaElementName     ,
+    getDOMHTMLTextAreaElementName           ,
+    setDOMHTMLTextAreaElementName           ,
+
+
+-- ** Placeholder
+    DOMHTMLTextAreaElementPlaceholderPropertyInfo,
+    constructDOMHTMLTextAreaElementPlaceholder,
+    getDOMHTMLTextAreaElementPlaceholder    ,
+    setDOMHTMLTextAreaElementPlaceholder    ,
+
+
+-- ** ReadOnly
+    DOMHTMLTextAreaElementReadOnlyPropertyInfo,
+    constructDOMHTMLTextAreaElementReadOnly ,
+    getDOMHTMLTextAreaElementReadOnly       ,
+    setDOMHTMLTextAreaElementReadOnly       ,
+
+
+-- ** Required
+    DOMHTMLTextAreaElementRequiredPropertyInfo,
+    constructDOMHTMLTextAreaElementRequired ,
+    getDOMHTMLTextAreaElementRequired       ,
+    setDOMHTMLTextAreaElementRequired       ,
+
+
+-- ** Rows
+    DOMHTMLTextAreaElementRowsPropertyInfo  ,
+    constructDOMHTMLTextAreaElementRows     ,
+    getDOMHTMLTextAreaElementRows           ,
+    setDOMHTMLTextAreaElementRows           ,
+
+
+-- ** SelectionDirection
+    DOMHTMLTextAreaElementSelectionDirectionPropertyInfo,
+    constructDOMHTMLTextAreaElementSelectionDirection,
+    getDOMHTMLTextAreaElementSelectionDirection,
+    setDOMHTMLTextAreaElementSelectionDirection,
+
+
+-- ** SelectionEnd
+    DOMHTMLTextAreaElementSelectionEndPropertyInfo,
+    constructDOMHTMLTextAreaElementSelectionEnd,
+    getDOMHTMLTextAreaElementSelectionEnd   ,
+    setDOMHTMLTextAreaElementSelectionEnd   ,
+
+
+-- ** SelectionStart
+    DOMHTMLTextAreaElementSelectionStartPropertyInfo,
+    constructDOMHTMLTextAreaElementSelectionStart,
+    getDOMHTMLTextAreaElementSelectionStart ,
+    setDOMHTMLTextAreaElementSelectionStart ,
+
+
+-- ** TextLength
+    DOMHTMLTextAreaElementTextLengthPropertyInfo,
+    getDOMHTMLTextAreaElementTextLength     ,
+
+
+-- ** Type
+    DOMHTMLTextAreaElementTypePropertyInfo  ,
+    getDOMHTMLTextAreaElementType           ,
+
+
+-- ** ValidationMessage
+    DOMHTMLTextAreaElementValidationMessagePropertyInfo,
+    getDOMHTMLTextAreaElementValidationMessage,
+
+
+-- ** Value
+    DOMHTMLTextAreaElementValuePropertyInfo ,
+    constructDOMHTMLTextAreaElementValue    ,
+    getDOMHTMLTextAreaElementValue          ,
+    setDOMHTMLTextAreaElementValue          ,
+
+
+-- ** WillValidate
+    DOMHTMLTextAreaElementWillValidatePropertyInfo,
+    getDOMHTMLTextAreaElementWillValidate   ,
+
+
+-- ** Wrap
+    DOMHTMLTextAreaElementWrapPropertyInfo  ,
+    constructDOMHTMLTextAreaElementWrap     ,
+    getDOMHTMLTextAreaElementWrap           ,
+    setDOMHTMLTextAreaElementWrap           ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLTextAreaElement = DOMHTMLTextAreaElement (ForeignPtr DOMHTMLTextAreaElement)
+foreign import ccall "webkit_dom_html_text_area_element_get_type"
+    c_webkit_dom_html_text_area_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLTextAreaElement = DOMHTMLTextAreaElementParentTypes
+type DOMHTMLTextAreaElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLTextAreaElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_text_area_element_get_type
+    
+
+class GObject o => DOMHTMLTextAreaElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTextAreaElement o) => DOMHTMLTextAreaElementK o
+
+toDOMHTMLTextAreaElement :: DOMHTMLTextAreaElementK o => o -> IO DOMHTMLTextAreaElement
+toDOMHTMLTextAreaElement = unsafeCastTo DOMHTMLTextAreaElement
+
+noDOMHTMLTextAreaElement :: Maybe DOMHTMLTextAreaElement
+noDOMHTMLTextAreaElement = Nothing
+
+-- VVV Prop "autocapitalize"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementAutocapitalize :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m T.Text
+getDOMHTMLTextAreaElementAutocapitalize obj = liftIO $ getObjectPropertyString obj "autocapitalize"
+
+setDOMHTMLTextAreaElementAutocapitalize :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> T.Text -> m ()
+setDOMHTMLTextAreaElementAutocapitalize obj val = liftIO $ setObjectPropertyString obj "autocapitalize" val
+
+constructDOMHTMLTextAreaElementAutocapitalize :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementAutocapitalize val = constructObjectPropertyString "autocapitalize" val
+
+data DOMHTMLTextAreaElementAutocapitalizePropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementAutocapitalizePropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementAutocapitalizePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementAutocapitalizePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementAutocapitalizePropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementAutocapitalizePropertyInfo = T.Text
+    type AttrLabel DOMHTMLTextAreaElementAutocapitalizePropertyInfo = "DOMHTMLTextAreaElement::autocapitalize"
+    attrGet _ = getDOMHTMLTextAreaElementAutocapitalize
+    attrSet _ = setDOMHTMLTextAreaElementAutocapitalize
+    attrConstruct _ = constructDOMHTMLTextAreaElementAutocapitalize
+
+-- VVV Prop "autocorrect"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementAutocorrect :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m Bool
+getDOMHTMLTextAreaElementAutocorrect obj = liftIO $ getObjectPropertyBool obj "autocorrect"
+
+setDOMHTMLTextAreaElementAutocorrect :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> Bool -> m ()
+setDOMHTMLTextAreaElementAutocorrect obj val = liftIO $ setObjectPropertyBool obj "autocorrect" val
+
+constructDOMHTMLTextAreaElementAutocorrect :: Bool -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementAutocorrect val = constructObjectPropertyBool "autocorrect" val
+
+data DOMHTMLTextAreaElementAutocorrectPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementAutocorrectPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementAutocorrectPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementAutocorrectPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementAutocorrectPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementAutocorrectPropertyInfo = Bool
+    type AttrLabel DOMHTMLTextAreaElementAutocorrectPropertyInfo = "DOMHTMLTextAreaElement::autocorrect"
+    attrGet _ = getDOMHTMLTextAreaElementAutocorrect
+    attrSet _ = setDOMHTMLTextAreaElementAutocorrect
+    attrConstruct _ = constructDOMHTMLTextAreaElementAutocorrect
+
+-- VVV Prop "autofocus"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementAutofocus :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m Bool
+getDOMHTMLTextAreaElementAutofocus obj = liftIO $ getObjectPropertyBool obj "autofocus"
+
+setDOMHTMLTextAreaElementAutofocus :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> Bool -> m ()
+setDOMHTMLTextAreaElementAutofocus obj val = liftIO $ setObjectPropertyBool obj "autofocus" val
+
+constructDOMHTMLTextAreaElementAutofocus :: Bool -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementAutofocus val = constructObjectPropertyBool "autofocus" val
+
+data DOMHTMLTextAreaElementAutofocusPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementAutofocusPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementAutofocusPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementAutofocusPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementAutofocusPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementAutofocusPropertyInfo = Bool
+    type AttrLabel DOMHTMLTextAreaElementAutofocusPropertyInfo = "DOMHTMLTextAreaElement::autofocus"
+    attrGet _ = getDOMHTMLTextAreaElementAutofocus
+    attrSet _ = setDOMHTMLTextAreaElementAutofocus
+    attrConstruct _ = constructDOMHTMLTextAreaElementAutofocus
+
+-- VVV Prop "cols"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementCols :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m Int64
+getDOMHTMLTextAreaElementCols obj = liftIO $ getObjectPropertyInt64 obj "cols"
+
+setDOMHTMLTextAreaElementCols :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> Int64 -> m ()
+setDOMHTMLTextAreaElementCols obj val = liftIO $ setObjectPropertyInt64 obj "cols" val
+
+constructDOMHTMLTextAreaElementCols :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementCols val = constructObjectPropertyInt64 "cols" val
+
+data DOMHTMLTextAreaElementColsPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementColsPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementColsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementColsPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementColsPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementColsPropertyInfo = Int64
+    type AttrLabel DOMHTMLTextAreaElementColsPropertyInfo = "DOMHTMLTextAreaElement::cols"
+    attrGet _ = getDOMHTMLTextAreaElementCols
+    attrSet _ = setDOMHTMLTextAreaElementCols
+    attrConstruct _ = constructDOMHTMLTextAreaElementCols
+
+-- VVV Prop "default-value"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementDefaultValue :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m T.Text
+getDOMHTMLTextAreaElementDefaultValue obj = liftIO $ getObjectPropertyString obj "default-value"
+
+setDOMHTMLTextAreaElementDefaultValue :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> T.Text -> m ()
+setDOMHTMLTextAreaElementDefaultValue obj val = liftIO $ setObjectPropertyString obj "default-value" val
+
+constructDOMHTMLTextAreaElementDefaultValue :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementDefaultValue val = constructObjectPropertyString "default-value" val
+
+data DOMHTMLTextAreaElementDefaultValuePropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementDefaultValuePropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementDefaultValuePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementDefaultValuePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementDefaultValuePropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementDefaultValuePropertyInfo = T.Text
+    type AttrLabel DOMHTMLTextAreaElementDefaultValuePropertyInfo = "DOMHTMLTextAreaElement::default-value"
+    attrGet _ = getDOMHTMLTextAreaElementDefaultValue
+    attrSet _ = setDOMHTMLTextAreaElementDefaultValue
+    attrConstruct _ = constructDOMHTMLTextAreaElementDefaultValue
+
+-- VVV Prop "dir-name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementDirName :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m T.Text
+getDOMHTMLTextAreaElementDirName obj = liftIO $ getObjectPropertyString obj "dir-name"
+
+setDOMHTMLTextAreaElementDirName :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> T.Text -> m ()
+setDOMHTMLTextAreaElementDirName obj val = liftIO $ setObjectPropertyString obj "dir-name" val
+
+constructDOMHTMLTextAreaElementDirName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementDirName val = constructObjectPropertyString "dir-name" val
+
+data DOMHTMLTextAreaElementDirNamePropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementDirNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementDirNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementDirNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementDirNamePropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementDirNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLTextAreaElementDirNamePropertyInfo = "DOMHTMLTextAreaElement::dir-name"
+    attrGet _ = getDOMHTMLTextAreaElementDirName
+    attrSet _ = setDOMHTMLTextAreaElementDirName
+    attrConstruct _ = constructDOMHTMLTextAreaElementDirName
+
+-- VVV Prop "disabled"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementDisabled :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m Bool
+getDOMHTMLTextAreaElementDisabled obj = liftIO $ getObjectPropertyBool obj "disabled"
+
+setDOMHTMLTextAreaElementDisabled :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> Bool -> m ()
+setDOMHTMLTextAreaElementDisabled obj val = liftIO $ setObjectPropertyBool obj "disabled" val
+
+constructDOMHTMLTextAreaElementDisabled :: Bool -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementDisabled val = constructObjectPropertyBool "disabled" val
+
+data DOMHTMLTextAreaElementDisabledPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementDisabledPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementDisabledPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementDisabledPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementDisabledPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementDisabledPropertyInfo = Bool
+    type AttrLabel DOMHTMLTextAreaElementDisabledPropertyInfo = "DOMHTMLTextAreaElement::disabled"
+    attrGet _ = getDOMHTMLTextAreaElementDisabled
+    attrSet _ = setDOMHTMLTextAreaElementDisabled
+    attrConstruct _ = constructDOMHTMLTextAreaElementDisabled
+
+-- VVV Prop "form"
+   -- Type: TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTextAreaElementForm :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m DOMHTMLFormElement
+getDOMHTMLTextAreaElementForm obj = liftIO $ getObjectPropertyObject obj "form" DOMHTMLFormElement
+
+data DOMHTMLTextAreaElementFormPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementFormPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementFormPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementFormPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementFormPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementFormPropertyInfo = DOMHTMLFormElement
+    type AttrLabel DOMHTMLTextAreaElementFormPropertyInfo = "DOMHTMLTextAreaElement::form"
+    attrGet _ = getDOMHTMLTextAreaElementForm
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "labels"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNodeList"
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTextAreaElementLabels :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m DOMNodeList
+getDOMHTMLTextAreaElementLabels obj = liftIO $ getObjectPropertyObject obj "labels" DOMNodeList
+
+data DOMHTMLTextAreaElementLabelsPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementLabelsPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementLabelsPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementLabelsPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementLabelsPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementLabelsPropertyInfo = DOMNodeList
+    type AttrLabel DOMHTMLTextAreaElementLabelsPropertyInfo = "DOMHTMLTextAreaElement::labels"
+    attrGet _ = getDOMHTMLTextAreaElementLabels
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "max-length"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementMaxLength :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m Int64
+getDOMHTMLTextAreaElementMaxLength obj = liftIO $ getObjectPropertyInt64 obj "max-length"
+
+setDOMHTMLTextAreaElementMaxLength :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> Int64 -> m ()
+setDOMHTMLTextAreaElementMaxLength obj val = liftIO $ setObjectPropertyInt64 obj "max-length" val
+
+constructDOMHTMLTextAreaElementMaxLength :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementMaxLength val = constructObjectPropertyInt64 "max-length" val
+
+data DOMHTMLTextAreaElementMaxLengthPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementMaxLengthPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementMaxLengthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementMaxLengthPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementMaxLengthPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementMaxLengthPropertyInfo = Int64
+    type AttrLabel DOMHTMLTextAreaElementMaxLengthPropertyInfo = "DOMHTMLTextAreaElement::max-length"
+    attrGet _ = getDOMHTMLTextAreaElementMaxLength
+    attrSet _ = setDOMHTMLTextAreaElementMaxLength
+    attrConstruct _ = constructDOMHTMLTextAreaElementMaxLength
+
+-- VVV Prop "name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementName :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m T.Text
+getDOMHTMLTextAreaElementName obj = liftIO $ getObjectPropertyString obj "name"
+
+setDOMHTMLTextAreaElementName :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> T.Text -> m ()
+setDOMHTMLTextAreaElementName obj val = liftIO $ setObjectPropertyString obj "name" val
+
+constructDOMHTMLTextAreaElementName :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementName val = constructObjectPropertyString "name" val
+
+data DOMHTMLTextAreaElementNamePropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementNamePropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementNamePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementNamePropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementNamePropertyInfo = T.Text
+    type AttrLabel DOMHTMLTextAreaElementNamePropertyInfo = "DOMHTMLTextAreaElement::name"
+    attrGet _ = getDOMHTMLTextAreaElementName
+    attrSet _ = setDOMHTMLTextAreaElementName
+    attrConstruct _ = constructDOMHTMLTextAreaElementName
+
+-- VVV Prop "placeholder"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementPlaceholder :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m T.Text
+getDOMHTMLTextAreaElementPlaceholder obj = liftIO $ getObjectPropertyString obj "placeholder"
+
+setDOMHTMLTextAreaElementPlaceholder :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> T.Text -> m ()
+setDOMHTMLTextAreaElementPlaceholder obj val = liftIO $ setObjectPropertyString obj "placeholder" val
+
+constructDOMHTMLTextAreaElementPlaceholder :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementPlaceholder val = constructObjectPropertyString "placeholder" val
+
+data DOMHTMLTextAreaElementPlaceholderPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementPlaceholderPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementPlaceholderPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementPlaceholderPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementPlaceholderPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementPlaceholderPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTextAreaElementPlaceholderPropertyInfo = "DOMHTMLTextAreaElement::placeholder"
+    attrGet _ = getDOMHTMLTextAreaElementPlaceholder
+    attrSet _ = setDOMHTMLTextAreaElementPlaceholder
+    attrConstruct _ = constructDOMHTMLTextAreaElementPlaceholder
+
+-- VVV Prop "read-only"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementReadOnly :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m Bool
+getDOMHTMLTextAreaElementReadOnly obj = liftIO $ getObjectPropertyBool obj "read-only"
+
+setDOMHTMLTextAreaElementReadOnly :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> Bool -> m ()
+setDOMHTMLTextAreaElementReadOnly obj val = liftIO $ setObjectPropertyBool obj "read-only" val
+
+constructDOMHTMLTextAreaElementReadOnly :: Bool -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementReadOnly val = constructObjectPropertyBool "read-only" val
+
+data DOMHTMLTextAreaElementReadOnlyPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementReadOnlyPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementReadOnlyPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementReadOnlyPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementReadOnlyPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementReadOnlyPropertyInfo = Bool
+    type AttrLabel DOMHTMLTextAreaElementReadOnlyPropertyInfo = "DOMHTMLTextAreaElement::read-only"
+    attrGet _ = getDOMHTMLTextAreaElementReadOnly
+    attrSet _ = setDOMHTMLTextAreaElementReadOnly
+    attrConstruct _ = constructDOMHTMLTextAreaElementReadOnly
+
+-- VVV Prop "required"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementRequired :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m Bool
+getDOMHTMLTextAreaElementRequired obj = liftIO $ getObjectPropertyBool obj "required"
+
+setDOMHTMLTextAreaElementRequired :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> Bool -> m ()
+setDOMHTMLTextAreaElementRequired obj val = liftIO $ setObjectPropertyBool obj "required" val
+
+constructDOMHTMLTextAreaElementRequired :: Bool -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementRequired val = constructObjectPropertyBool "required" val
+
+data DOMHTMLTextAreaElementRequiredPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementRequiredPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementRequiredPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementRequiredPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementRequiredPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementRequiredPropertyInfo = Bool
+    type AttrLabel DOMHTMLTextAreaElementRequiredPropertyInfo = "DOMHTMLTextAreaElement::required"
+    attrGet _ = getDOMHTMLTextAreaElementRequired
+    attrSet _ = setDOMHTMLTextAreaElementRequired
+    attrConstruct _ = constructDOMHTMLTextAreaElementRequired
+
+-- VVV Prop "rows"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementRows :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m Int64
+getDOMHTMLTextAreaElementRows obj = liftIO $ getObjectPropertyInt64 obj "rows"
+
+setDOMHTMLTextAreaElementRows :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> Int64 -> m ()
+setDOMHTMLTextAreaElementRows obj val = liftIO $ setObjectPropertyInt64 obj "rows" val
+
+constructDOMHTMLTextAreaElementRows :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementRows val = constructObjectPropertyInt64 "rows" val
+
+data DOMHTMLTextAreaElementRowsPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementRowsPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementRowsPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementRowsPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementRowsPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementRowsPropertyInfo = Int64
+    type AttrLabel DOMHTMLTextAreaElementRowsPropertyInfo = "DOMHTMLTextAreaElement::rows"
+    attrGet _ = getDOMHTMLTextAreaElementRows
+    attrSet _ = setDOMHTMLTextAreaElementRows
+    attrConstruct _ = constructDOMHTMLTextAreaElementRows
+
+-- VVV Prop "selection-direction"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementSelectionDirection :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m T.Text
+getDOMHTMLTextAreaElementSelectionDirection obj = liftIO $ getObjectPropertyString obj "selection-direction"
+
+setDOMHTMLTextAreaElementSelectionDirection :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> T.Text -> m ()
+setDOMHTMLTextAreaElementSelectionDirection obj val = liftIO $ setObjectPropertyString obj "selection-direction" val
+
+constructDOMHTMLTextAreaElementSelectionDirection :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementSelectionDirection val = constructObjectPropertyString "selection-direction" val
+
+data DOMHTMLTextAreaElementSelectionDirectionPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementSelectionDirectionPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementSelectionDirectionPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementSelectionDirectionPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementSelectionDirectionPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementSelectionDirectionPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTextAreaElementSelectionDirectionPropertyInfo = "DOMHTMLTextAreaElement::selection-direction"
+    attrGet _ = getDOMHTMLTextAreaElementSelectionDirection
+    attrSet _ = setDOMHTMLTextAreaElementSelectionDirection
+    attrConstruct _ = constructDOMHTMLTextAreaElementSelectionDirection
+
+-- VVV Prop "selection-end"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementSelectionEnd :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m Int64
+getDOMHTMLTextAreaElementSelectionEnd obj = liftIO $ getObjectPropertyInt64 obj "selection-end"
+
+setDOMHTMLTextAreaElementSelectionEnd :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> Int64 -> m ()
+setDOMHTMLTextAreaElementSelectionEnd obj val = liftIO $ setObjectPropertyInt64 obj "selection-end" val
+
+constructDOMHTMLTextAreaElementSelectionEnd :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementSelectionEnd val = constructObjectPropertyInt64 "selection-end" val
+
+data DOMHTMLTextAreaElementSelectionEndPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementSelectionEndPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementSelectionEndPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementSelectionEndPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementSelectionEndPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementSelectionEndPropertyInfo = Int64
+    type AttrLabel DOMHTMLTextAreaElementSelectionEndPropertyInfo = "DOMHTMLTextAreaElement::selection-end"
+    attrGet _ = getDOMHTMLTextAreaElementSelectionEnd
+    attrSet _ = setDOMHTMLTextAreaElementSelectionEnd
+    attrConstruct _ = constructDOMHTMLTextAreaElementSelectionEnd
+
+-- VVV Prop "selection-start"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementSelectionStart :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m Int64
+getDOMHTMLTextAreaElementSelectionStart obj = liftIO $ getObjectPropertyInt64 obj "selection-start"
+
+setDOMHTMLTextAreaElementSelectionStart :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> Int64 -> m ()
+setDOMHTMLTextAreaElementSelectionStart obj val = liftIO $ setObjectPropertyInt64 obj "selection-start" val
+
+constructDOMHTMLTextAreaElementSelectionStart :: Int64 -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementSelectionStart val = constructObjectPropertyInt64 "selection-start" val
+
+data DOMHTMLTextAreaElementSelectionStartPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementSelectionStartPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementSelectionStartPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementSelectionStartPropertyInfo = (~) Int64
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementSelectionStartPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementSelectionStartPropertyInfo = Int64
+    type AttrLabel DOMHTMLTextAreaElementSelectionStartPropertyInfo = "DOMHTMLTextAreaElement::selection-start"
+    attrGet _ = getDOMHTMLTextAreaElementSelectionStart
+    attrSet _ = setDOMHTMLTextAreaElementSelectionStart
+    attrConstruct _ = constructDOMHTMLTextAreaElementSelectionStart
+
+-- VVV Prop "text-length"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTextAreaElementTextLength :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m Word64
+getDOMHTMLTextAreaElementTextLength obj = liftIO $ getObjectPropertyUInt64 obj "text-length"
+
+data DOMHTMLTextAreaElementTextLengthPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementTextLengthPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementTextLengthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementTextLengthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementTextLengthPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementTextLengthPropertyInfo = Word64
+    type AttrLabel DOMHTMLTextAreaElementTextLengthPropertyInfo = "DOMHTMLTextAreaElement::text-length"
+    attrGet _ = getDOMHTMLTextAreaElementTextLength
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTextAreaElementType :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m T.Text
+getDOMHTMLTextAreaElementType obj = liftIO $ getObjectPropertyString obj "type"
+
+data DOMHTMLTextAreaElementTypePropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementTypePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementTypePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementTypePropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLTextAreaElementTypePropertyInfo = "DOMHTMLTextAreaElement::type"
+    attrGet _ = getDOMHTMLTextAreaElementType
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "validation-message"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTextAreaElementValidationMessage :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m T.Text
+getDOMHTMLTextAreaElementValidationMessage obj = liftIO $ getObjectPropertyString obj "validation-message"
+
+data DOMHTMLTextAreaElementValidationMessagePropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementValidationMessagePropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementValidationMessagePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementValidationMessagePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementValidationMessagePropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementValidationMessagePropertyInfo = T.Text
+    type AttrLabel DOMHTMLTextAreaElementValidationMessagePropertyInfo = "DOMHTMLTextAreaElement::validation-message"
+    attrGet _ = getDOMHTMLTextAreaElementValidationMessage
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "value"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementValue :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m T.Text
+getDOMHTMLTextAreaElementValue obj = liftIO $ getObjectPropertyString obj "value"
+
+setDOMHTMLTextAreaElementValue :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> T.Text -> m ()
+setDOMHTMLTextAreaElementValue obj val = liftIO $ setObjectPropertyString obj "value" val
+
+constructDOMHTMLTextAreaElementValue :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementValue val = constructObjectPropertyString "value" val
+
+data DOMHTMLTextAreaElementValuePropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementValuePropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementValuePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementValuePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementValuePropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementValuePropertyInfo = T.Text
+    type AttrLabel DOMHTMLTextAreaElementValuePropertyInfo = "DOMHTMLTextAreaElement::value"
+    attrGet _ = getDOMHTMLTextAreaElementValue
+    attrSet _ = setDOMHTMLTextAreaElementValue
+    attrConstruct _ = constructDOMHTMLTextAreaElementValue
+
+-- VVV Prop "will-validate"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMHTMLTextAreaElementWillValidate :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m Bool
+getDOMHTMLTextAreaElementWillValidate obj = liftIO $ getObjectPropertyBool obj "will-validate"
+
+data DOMHTMLTextAreaElementWillValidatePropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementWillValidatePropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementWillValidatePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementWillValidatePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementWillValidatePropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementWillValidatePropertyInfo = Bool
+    type AttrLabel DOMHTMLTextAreaElementWillValidatePropertyInfo = "DOMHTMLTextAreaElement::will-validate"
+    attrGet _ = getDOMHTMLTextAreaElementWillValidate
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "wrap"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTextAreaElementWrap :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> m T.Text
+getDOMHTMLTextAreaElementWrap obj = liftIO $ getObjectPropertyString obj "wrap"
+
+setDOMHTMLTextAreaElementWrap :: (MonadIO m, DOMHTMLTextAreaElementK o) => o -> T.Text -> m ()
+setDOMHTMLTextAreaElementWrap obj val = liftIO $ setObjectPropertyString obj "wrap" val
+
+constructDOMHTMLTextAreaElementWrap :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTextAreaElementWrap val = constructObjectPropertyString "wrap" val
+
+data DOMHTMLTextAreaElementWrapPropertyInfo
+instance AttrInfo DOMHTMLTextAreaElementWrapPropertyInfo where
+    type AttrAllowedOps DOMHTMLTextAreaElementWrapPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTextAreaElementWrapPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTextAreaElementWrapPropertyInfo = DOMHTMLTextAreaElementK
+    type AttrGetType DOMHTMLTextAreaElementWrapPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTextAreaElementWrapPropertyInfo = "DOMHTMLTextAreaElement::wrap"
+    attrGet _ = getDOMHTMLTextAreaElementWrap
+    attrSet _ = setDOMHTMLTextAreaElementWrap
+    attrConstruct _ = constructDOMHTMLTextAreaElementWrap
+
+type instance AttributeList DOMHTMLTextAreaElement = DOMHTMLTextAreaElementAttributeList
+type DOMHTMLTextAreaElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("autocapitalize", DOMHTMLTextAreaElementAutocapitalizePropertyInfo), '("autocorrect", DOMHTMLTextAreaElementAutocorrectPropertyInfo), '("autofocus", DOMHTMLTextAreaElementAutofocusPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("cols", DOMHTMLTextAreaElementColsPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("default-value", DOMHTMLTextAreaElementDefaultValuePropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("dir-name", DOMHTMLTextAreaElementDirNamePropertyInfo), '("disabled", DOMHTMLTextAreaElementDisabledPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("form", DOMHTMLTextAreaElementFormPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("labels", DOMHTMLTextAreaElementLabelsPropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("max-length", DOMHTMLTextAreaElementMaxLengthPropertyInfo), '("name", DOMHTMLTextAreaElementNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("placeholder", DOMHTMLTextAreaElementPlaceholderPropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("read-only", DOMHTMLTextAreaElementReadOnlyPropertyInfo), '("required", DOMHTMLTextAreaElementRequiredPropertyInfo), '("rows", DOMHTMLTextAreaElementRowsPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("selection-direction", DOMHTMLTextAreaElementSelectionDirectionPropertyInfo), '("selection-end", DOMHTMLTextAreaElementSelectionEndPropertyInfo), '("selection-start", DOMHTMLTextAreaElementSelectionStartPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("text-length", DOMHTMLTextAreaElementTextLengthPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLTextAreaElementTypePropertyInfo), '("validation-message", DOMHTMLTextAreaElementValidationMessagePropertyInfo), '("value", DOMHTMLTextAreaElementValuePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo), '("will-validate", DOMHTMLTextAreaElementWillValidatePropertyInfo), '("wrap", DOMHTMLTextAreaElementWrapPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLTextAreaElement = DOMHTMLTextAreaElementSignalList
+type DOMHTMLTextAreaElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLTextAreaElement::get_area_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_get_area_type" webkit_dom_html_text_area_element_get_area_type :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    IO CString
+
+
+dOMHTMLTextAreaElementGetAreaType ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTextAreaElementGetAreaType _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_text_area_element_get_area_type _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_text_area_element_get_area_type" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTextAreaElement::get_autofocus
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_get_autofocus" webkit_dom_html_text_area_element_get_autofocus :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    IO CInt
+
+
+dOMHTMLTextAreaElementGetAutofocus ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLTextAreaElementGetAutofocus _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_text_area_element_get_autofocus _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTextAreaElement::get_cols
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_get_cols" webkit_dom_html_text_area_element_get_cols :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    IO Int64
+
+
+dOMHTMLTextAreaElementGetCols ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLTextAreaElementGetCols _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_text_area_element_get_cols _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLTextAreaElement::get_default_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_get_default_value" webkit_dom_html_text_area_element_get_default_value :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    IO CString
+
+
+dOMHTMLTextAreaElementGetDefaultValue ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTextAreaElementGetDefaultValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_text_area_element_get_default_value _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_text_area_element_get_default_value" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTextAreaElement::get_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_get_disabled" webkit_dom_html_text_area_element_get_disabled :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    IO CInt
+
+
+dOMHTMLTextAreaElementGetDisabled ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLTextAreaElementGetDisabled _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_text_area_element_get_disabled _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTextAreaElement::get_form
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMHTMLFormElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_get_form" webkit_dom_html_text_area_element_get_form :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    IO (Ptr DOMHTMLFormElement)
+
+
+dOMHTMLTextAreaElementGetForm ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    m DOMHTMLFormElement
+dOMHTMLTextAreaElementGetForm _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_text_area_element_get_form _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_text_area_element_get_form" result
+    result' <- (newObject DOMHTMLFormElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTextAreaElement::get_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_get_name" webkit_dom_html_text_area_element_get_name :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    IO CString
+
+
+dOMHTMLTextAreaElementGetName ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTextAreaElementGetName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_text_area_element_get_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_text_area_element_get_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTextAreaElement::get_read_only
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_get_read_only" webkit_dom_html_text_area_element_get_read_only :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    IO CInt
+
+
+dOMHTMLTextAreaElementGetReadOnly ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLTextAreaElementGetReadOnly _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_text_area_element_get_read_only _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTextAreaElement::get_rows
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_get_rows" webkit_dom_html_text_area_element_get_rows :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    IO Int64
+
+
+dOMHTMLTextAreaElementGetRows ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLTextAreaElementGetRows _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_text_area_element_get_rows _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLTextAreaElement::get_selection_end
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_get_selection_end" webkit_dom_html_text_area_element_get_selection_end :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    IO Int64
+
+
+dOMHTMLTextAreaElementGetSelectionEnd ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLTextAreaElementGetSelectionEnd _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_text_area_element_get_selection_end _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLTextAreaElement::get_selection_start
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_get_selection_start" webkit_dom_html_text_area_element_get_selection_start :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    IO Int64
+
+
+dOMHTMLTextAreaElementGetSelectionStart ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMHTMLTextAreaElementGetSelectionStart _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_text_area_element_get_selection_start _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMHTMLTextAreaElement::get_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_get_value" webkit_dom_html_text_area_element_get_value :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    IO CString
+
+
+dOMHTMLTextAreaElementGetValue ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTextAreaElementGetValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_text_area_element_get_value _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_text_area_element_get_value" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTextAreaElement::get_will_validate
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_get_will_validate" webkit_dom_html_text_area_element_get_will_validate :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    IO CInt
+
+
+dOMHTMLTextAreaElementGetWillValidate ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLTextAreaElementGetWillValidate _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_text_area_element_get_will_validate _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTextAreaElement::is_edited
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_is_edited" webkit_dom_html_text_area_element_is_edited :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    IO CInt
+
+
+dOMHTMLTextAreaElementIsEdited ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLTextAreaElementIsEdited _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_text_area_element_is_edited _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTextAreaElement::select
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_select" webkit_dom_html_text_area_element_select :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    IO ()
+
+
+dOMHTMLTextAreaElementSelect ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMHTMLTextAreaElementSelect _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_text_area_element_select _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLTextAreaElement::set_autofocus
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_set_autofocus" webkit_dom_html_text_area_element_set_autofocus :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLTextAreaElementSetAutofocus ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLTextAreaElementSetAutofocus _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_text_area_element_set_autofocus _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLTextAreaElement::set_cols
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_set_cols" webkit_dom_html_text_area_element_set_cols :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLTextAreaElementSetCols ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLTextAreaElementSetCols _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_text_area_element_set_cols _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLTextAreaElement::set_default_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_set_default_value" webkit_dom_html_text_area_element_set_default_value :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTextAreaElementSetDefaultValue ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTextAreaElementSetDefaultValue _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_text_area_element_set_default_value _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTextAreaElement::set_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_set_disabled" webkit_dom_html_text_area_element_set_disabled :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLTextAreaElementSetDisabled ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLTextAreaElementSetDisabled _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_text_area_element_set_disabled _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLTextAreaElement::set_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_set_name" webkit_dom_html_text_area_element_set_name :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTextAreaElementSetName ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTextAreaElementSetName _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_text_area_element_set_name _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+-- method DOMHTMLTextAreaElement::set_read_only
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_set_read_only" webkit_dom_html_text_area_element_set_read_only :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLTextAreaElementSetReadOnly ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLTextAreaElementSetReadOnly _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_text_area_element_set_read_only _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLTextAreaElement::set_rows
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_set_rows" webkit_dom_html_text_area_element_set_rows :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLTextAreaElementSetRows ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLTextAreaElementSetRows _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_text_area_element_set_rows _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLTextAreaElement::set_selection_end
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_set_selection_end" webkit_dom_html_text_area_element_set_selection_end :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLTextAreaElementSetSelectionEnd ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLTextAreaElementSetSelectionEnd _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_text_area_element_set_selection_end _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLTextAreaElement::set_selection_range
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "end", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "direction", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "start", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "end", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "direction", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_set_selection_range" webkit_dom_html_text_area_element_set_selection_range :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    Int64 ->                                -- start : TBasicType TInt64
+    Int64 ->                                -- end : TBasicType TInt64
+    CString ->                              -- direction : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTextAreaElementSetSelectionRange ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- start
+    Int64 ->                                -- end
+    T.Text ->                               -- direction
+    m ()
+dOMHTMLTextAreaElementSetSelectionRange _obj start end direction = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    direction' <- textToCString direction
+    webkit_dom_html_text_area_element_set_selection_range _obj' start end direction'
+    touchManagedPtr _obj
+    freeMem direction'
+    return ()
+
+-- method DOMHTMLTextAreaElement::set_selection_start
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_set_selection_start" webkit_dom_html_text_area_element_set_selection_start :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    Int64 ->                                -- value : TBasicType TInt64
+    IO ()
+
+
+dOMHTMLTextAreaElementSetSelectionStart ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- value
+    m ()
+dOMHTMLTextAreaElementSetSelectionStart _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_html_text_area_element_set_selection_start _obj' value
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLTextAreaElement::set_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_text_area_element_set_value" webkit_dom_html_text_area_element_set_value :: 
+    Ptr DOMHTMLTextAreaElement ->           -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTextAreaElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTextAreaElementSetValue ::
+    (MonadIO m, DOMHTMLTextAreaElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTextAreaElementSetValue _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_text_area_element_set_value _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTextAreaElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLTextAreaElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTextAreaElement.hs-boot
@@ -0,0 +1,37 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLTextAreaElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLTextAreaElement = DOMHTMLTextAreaElement (ForeignPtr DOMHTMLTextAreaElement)
+instance GObject DOMHTMLTextAreaElement where
+class GObject o => DOMHTMLTextAreaElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTextAreaElement o) => DOMHTMLTextAreaElementK o
+data DOMHTMLTextAreaElementAutocapitalizePropertyInfo
+data DOMHTMLTextAreaElementAutocorrectPropertyInfo
+data DOMHTMLTextAreaElementAutofocusPropertyInfo
+data DOMHTMLTextAreaElementColsPropertyInfo
+data DOMHTMLTextAreaElementDefaultValuePropertyInfo
+data DOMHTMLTextAreaElementDirNamePropertyInfo
+data DOMHTMLTextAreaElementDisabledPropertyInfo
+data DOMHTMLTextAreaElementFormPropertyInfo
+data DOMHTMLTextAreaElementLabelsPropertyInfo
+data DOMHTMLTextAreaElementMaxLengthPropertyInfo
+data DOMHTMLTextAreaElementNamePropertyInfo
+data DOMHTMLTextAreaElementPlaceholderPropertyInfo
+data DOMHTMLTextAreaElementReadOnlyPropertyInfo
+data DOMHTMLTextAreaElementRequiredPropertyInfo
+data DOMHTMLTextAreaElementRowsPropertyInfo
+data DOMHTMLTextAreaElementSelectionDirectionPropertyInfo
+data DOMHTMLTextAreaElementSelectionEndPropertyInfo
+data DOMHTMLTextAreaElementSelectionStartPropertyInfo
+data DOMHTMLTextAreaElementTextLengthPropertyInfo
+data DOMHTMLTextAreaElementTypePropertyInfo
+data DOMHTMLTextAreaElementValidationMessagePropertyInfo
+data DOMHTMLTextAreaElementValuePropertyInfo
+data DOMHTMLTextAreaElementWillValidatePropertyInfo
+data DOMHTMLTextAreaElementWrapPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTitleElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLTitleElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTitleElement.hs
@@ -0,0 +1,158 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLTitleElement
+    ( 
+
+-- * Exported types
+    DOMHTMLTitleElement(..)                 ,
+    DOMHTMLTitleElementK                    ,
+    toDOMHTMLTitleElement                   ,
+    noDOMHTMLTitleElement                   ,
+
+
+ -- * Methods
+-- ** dOMHTMLTitleElementGetText
+    dOMHTMLTitleElementGetText              ,
+
+
+-- ** dOMHTMLTitleElementSetText
+    dOMHTMLTitleElementSetText              ,
+
+
+
+
+ -- * Properties
+-- ** Text
+    DOMHTMLTitleElementTextPropertyInfo     ,
+    constructDOMHTMLTitleElementText        ,
+    getDOMHTMLTitleElementText              ,
+    setDOMHTMLTitleElementText              ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLTitleElement = DOMHTMLTitleElement (ForeignPtr DOMHTMLTitleElement)
+foreign import ccall "webkit_dom_html_title_element_get_type"
+    c_webkit_dom_html_title_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLTitleElement = DOMHTMLTitleElementParentTypes
+type DOMHTMLTitleElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLTitleElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_title_element_get_type
+    
+
+class GObject o => DOMHTMLTitleElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTitleElement o) => DOMHTMLTitleElementK o
+
+toDOMHTMLTitleElement :: DOMHTMLTitleElementK o => o -> IO DOMHTMLTitleElement
+toDOMHTMLTitleElement = unsafeCastTo DOMHTMLTitleElement
+
+noDOMHTMLTitleElement :: Maybe DOMHTMLTitleElement
+noDOMHTMLTitleElement = Nothing
+
+-- VVV Prop "text"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLTitleElementText :: (MonadIO m, DOMHTMLTitleElementK o) => o -> m T.Text
+getDOMHTMLTitleElementText obj = liftIO $ getObjectPropertyString obj "text"
+
+setDOMHTMLTitleElementText :: (MonadIO m, DOMHTMLTitleElementK o) => o -> T.Text -> m ()
+setDOMHTMLTitleElementText obj val = liftIO $ setObjectPropertyString obj "text" val
+
+constructDOMHTMLTitleElementText :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLTitleElementText val = constructObjectPropertyString "text" val
+
+data DOMHTMLTitleElementTextPropertyInfo
+instance AttrInfo DOMHTMLTitleElementTextPropertyInfo where
+    type AttrAllowedOps DOMHTMLTitleElementTextPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLTitleElementTextPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLTitleElementTextPropertyInfo = DOMHTMLTitleElementK
+    type AttrGetType DOMHTMLTitleElementTextPropertyInfo = T.Text
+    type AttrLabel DOMHTMLTitleElementTextPropertyInfo = "DOMHTMLTitleElement::text"
+    attrGet _ = getDOMHTMLTitleElementText
+    attrSet _ = setDOMHTMLTitleElementText
+    attrConstruct _ = constructDOMHTMLTitleElementText
+
+type instance AttributeList DOMHTMLTitleElement = DOMHTMLTitleElementAttributeList
+type DOMHTMLTitleElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text", DOMHTMLTitleElementTextPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLTitleElement = DOMHTMLTitleElementSignalList
+type DOMHTMLTitleElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLTitleElement::get_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTitleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTitleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_title_element_get_text" webkit_dom_html_title_element_get_text :: 
+    Ptr DOMHTMLTitleElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTitleElement"
+    IO CString
+
+
+dOMHTMLTitleElementGetText ::
+    (MonadIO m, DOMHTMLTitleElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLTitleElementGetText _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_title_element_get_text _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_title_element_get_text" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLTitleElement::set_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTitleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLTitleElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_title_element_set_text" webkit_dom_html_title_element_set_text :: 
+    Ptr DOMHTMLTitleElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLTitleElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLTitleElementSetText ::
+    (MonadIO m, DOMHTMLTitleElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLTitleElementSetText _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_title_element_set_text _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLTitleElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLTitleElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLTitleElement.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLTitleElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLTitleElement = DOMHTMLTitleElement (ForeignPtr DOMHTMLTitleElement)
+instance GObject DOMHTMLTitleElement where
+class GObject o => DOMHTMLTitleElementK o
+instance (GObject o, IsDescendantOf DOMHTMLTitleElement o) => DOMHTMLTitleElementK o
+data DOMHTMLTitleElementTextPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLUListElement.hs b/GI/WebKit2WebExtension/Objects/DOMHTMLUListElement.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLUListElement.hs
@@ -0,0 +1,249 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMHTMLUListElement
+    ( 
+
+-- * Exported types
+    DOMHTMLUListElement(..)                 ,
+    DOMHTMLUListElementK                    ,
+    toDOMHTMLUListElement                   ,
+    noDOMHTMLUListElement                   ,
+
+
+ -- * Methods
+-- ** dOMHTMLUListElementGetCompact
+    dOMHTMLUListElementGetCompact           ,
+
+
+-- ** dOMHTMLUListElementGetTypeAttr
+    dOMHTMLUListElementGetTypeAttr          ,
+
+
+-- ** dOMHTMLUListElementSetCompact
+    dOMHTMLUListElementSetCompact           ,
+
+
+-- ** dOMHTMLUListElementSetTypeAttr
+    dOMHTMLUListElementSetTypeAttr          ,
+
+
+
+
+ -- * Properties
+-- ** Compact
+    DOMHTMLUListElementCompactPropertyInfo  ,
+    constructDOMHTMLUListElementCompact     ,
+    getDOMHTMLUListElementCompact           ,
+    setDOMHTMLUListElementCompact           ,
+
+
+-- ** Type
+    DOMHTMLUListElementTypePropertyInfo     ,
+    constructDOMHTMLUListElementType        ,
+    getDOMHTMLUListElementType              ,
+    setDOMHTMLUListElementType              ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMHTMLUListElement = DOMHTMLUListElement (ForeignPtr DOMHTMLUListElement)
+foreign import ccall "webkit_dom_html_u_list_element_get_type"
+    c_webkit_dom_html_u_list_element_get_type :: IO GType
+
+type instance ParentTypes DOMHTMLUListElement = DOMHTMLUListElementParentTypes
+type DOMHTMLUListElementParentTypes = '[DOMHTMLElement, DOMElement, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMHTMLUListElement where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_html_u_list_element_get_type
+    
+
+class GObject o => DOMHTMLUListElementK o
+instance (GObject o, IsDescendantOf DOMHTMLUListElement o) => DOMHTMLUListElementK o
+
+toDOMHTMLUListElement :: DOMHTMLUListElementK o => o -> IO DOMHTMLUListElement
+toDOMHTMLUListElement = unsafeCastTo DOMHTMLUListElement
+
+noDOMHTMLUListElement :: Maybe DOMHTMLUListElement
+noDOMHTMLUListElement = Nothing
+
+-- VVV Prop "compact"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLUListElementCompact :: (MonadIO m, DOMHTMLUListElementK o) => o -> m Bool
+getDOMHTMLUListElementCompact obj = liftIO $ getObjectPropertyBool obj "compact"
+
+setDOMHTMLUListElementCompact :: (MonadIO m, DOMHTMLUListElementK o) => o -> Bool -> m ()
+setDOMHTMLUListElementCompact obj val = liftIO $ setObjectPropertyBool obj "compact" val
+
+constructDOMHTMLUListElementCompact :: Bool -> IO ([Char], GValue)
+constructDOMHTMLUListElementCompact val = constructObjectPropertyBool "compact" val
+
+data DOMHTMLUListElementCompactPropertyInfo
+instance AttrInfo DOMHTMLUListElementCompactPropertyInfo where
+    type AttrAllowedOps DOMHTMLUListElementCompactPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLUListElementCompactPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMHTMLUListElementCompactPropertyInfo = DOMHTMLUListElementK
+    type AttrGetType DOMHTMLUListElementCompactPropertyInfo = Bool
+    type AttrLabel DOMHTMLUListElementCompactPropertyInfo = "DOMHTMLUListElement::compact"
+    attrGet _ = getDOMHTMLUListElementCompact
+    attrSet _ = setDOMHTMLUListElementCompact
+    attrConstruct _ = constructDOMHTMLUListElementCompact
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMHTMLUListElementType :: (MonadIO m, DOMHTMLUListElementK o) => o -> m T.Text
+getDOMHTMLUListElementType obj = liftIO $ getObjectPropertyString obj "type"
+
+setDOMHTMLUListElementType :: (MonadIO m, DOMHTMLUListElementK o) => o -> T.Text -> m ()
+setDOMHTMLUListElementType obj val = liftIO $ setObjectPropertyString obj "type" val
+
+constructDOMHTMLUListElementType :: T.Text -> IO ([Char], GValue)
+constructDOMHTMLUListElementType val = constructObjectPropertyString "type" val
+
+data DOMHTMLUListElementTypePropertyInfo
+instance AttrInfo DOMHTMLUListElementTypePropertyInfo where
+    type AttrAllowedOps DOMHTMLUListElementTypePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMHTMLUListElementTypePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMHTMLUListElementTypePropertyInfo = DOMHTMLUListElementK
+    type AttrGetType DOMHTMLUListElementTypePropertyInfo = T.Text
+    type AttrLabel DOMHTMLUListElementTypePropertyInfo = "DOMHTMLUListElement::type"
+    attrGet _ = getDOMHTMLUListElementType
+    attrSet _ = setDOMHTMLUListElementType
+    attrConstruct _ = constructDOMHTMLUListElementType
+
+type instance AttributeList DOMHTMLUListElement = DOMHTMLUListElementAttributeList
+type DOMHTMLUListElementAttributeList = ('[ '("access-key", DOMHTMLElementAccessKeyPropertyInfo), '("attributes", DOMElementAttributesPropertyInfo), '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-element-count", DOMElementChildElementCountPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("children", DOMHTMLElementChildrenPropertyInfo), '("class-name", DOMElementClassNamePropertyInfo), '("client-height", DOMElementClientHeightPropertyInfo), '("client-left", DOMElementClientLeftPropertyInfo), '("client-top", DOMElementClientTopPropertyInfo), '("client-width", DOMElementClientWidthPropertyInfo), '("compact", DOMHTMLUListElementCompactPropertyInfo), '("content-editable", DOMHTMLElementContentEditablePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("dir", DOMHTMLElementDirPropertyInfo), '("draggable", DOMHTMLElementDraggablePropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("first-element-child", DOMElementFirstElementChildPropertyInfo), '("hidden", DOMHTMLElementHiddenPropertyInfo), '("id", DOMElementIdPropertyInfo), '("inner-html", DOMElementInnerHtmlPropertyInfo), '("inner-text", DOMHTMLElementInnerTextPropertyInfo), '("is-content-editable", DOMHTMLElementIsContentEditablePropertyInfo), '("lang", DOMHTMLElementLangPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("last-element-child", DOMElementLastElementChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-element-sibling", DOMElementNextElementSiblingPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("offset-height", DOMElementOffsetHeightPropertyInfo), '("offset-left", DOMElementOffsetLeftPropertyInfo), '("offset-parent", DOMElementOffsetParentPropertyInfo), '("offset-top", DOMElementOffsetTopPropertyInfo), '("offset-width", DOMElementOffsetWidthPropertyInfo), '("outer-html", DOMElementOuterHtmlPropertyInfo), '("outer-text", DOMHTMLElementOuterTextPropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-element-sibling", DOMElementPreviousElementSiblingPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("scroll-height", DOMElementScrollHeightPropertyInfo), '("scroll-left", DOMElementScrollLeftPropertyInfo), '("scroll-top", DOMElementScrollTopPropertyInfo), '("scroll-width", DOMElementScrollWidthPropertyInfo), '("spellcheck", DOMHTMLElementSpellcheckPropertyInfo), '("style", DOMElementStylePropertyInfo), '("tab-index", DOMHTMLElementTabIndexPropertyInfo), '("tag-name", DOMElementTagNamePropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("title", DOMHTMLElementTitlePropertyInfo), '("translate", DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLUListElementTypePropertyInfo), '("webkit-region-overset", DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", DOMHTMLElementWebkitdropzonePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMHTMLUListElement = DOMHTMLUListElementSignalList
+type DOMHTMLUListElementSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMHTMLUListElement::get_compact
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLUListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLUListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_u_list_element_get_compact" webkit_dom_html_u_list_element_get_compact :: 
+    Ptr DOMHTMLUListElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLUListElement"
+    IO CInt
+
+
+dOMHTMLUListElementGetCompact ::
+    (MonadIO m, DOMHTMLUListElementK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMHTMLUListElementGetCompact _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_u_list_element_get_compact _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLUListElement::get_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLUListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLUListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_u_list_element_get_type_attr" webkit_dom_html_u_list_element_get_type_attr :: 
+    Ptr DOMHTMLUListElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLUListElement"
+    IO CString
+
+
+dOMHTMLUListElementGetTypeAttr ::
+    (MonadIO m, DOMHTMLUListElementK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMHTMLUListElementGetTypeAttr _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_html_u_list_element_get_type_attr _obj'
+    checkUnexpectedReturnNULL "webkit_dom_html_u_list_element_get_type_attr" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMHTMLUListElement::set_compact
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLUListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLUListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_u_list_element_set_compact" webkit_dom_html_u_list_element_set_compact :: 
+    Ptr DOMHTMLUListElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLUListElement"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMHTMLUListElementSetCompact ::
+    (MonadIO m, DOMHTMLUListElementK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMHTMLUListElementSetCompact _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_html_u_list_element_set_compact _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMHTMLUListElement::set_type_attr
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLUListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMHTMLUListElement", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_html_u_list_element_set_type_attr" webkit_dom_html_u_list_element_set_type_attr :: 
+    Ptr DOMHTMLUListElement ->              -- _obj : TInterface "WebKit2WebExtension" "DOMHTMLUListElement"
+    CString ->                              -- value : TBasicType TUTF8
+    IO ()
+
+
+dOMHTMLUListElementSetTypeAttr ::
+    (MonadIO m, DOMHTMLUListElementK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMHTMLUListElementSetTypeAttr _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    webkit_dom_html_u_list_element_set_type_attr _obj' value'
+    touchManagedPtr _obj
+    freeMem value'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMHTMLUListElement.hs-boot b/GI/WebKit2WebExtension/Objects/DOMHTMLUListElement.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMHTMLUListElement.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMHTMLUListElement where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMHTMLUListElement = DOMHTMLUListElement (ForeignPtr DOMHTMLUListElement)
+instance GObject DOMHTMLUListElement where
+class GObject o => DOMHTMLUListElementK o
+instance (GObject o, IsDescendantOf DOMHTMLUListElement o) => DOMHTMLUListElementK o
+data DOMHTMLUListElementCompactPropertyInfo
+data DOMHTMLUListElementTypePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMKeyboardEvent.hs b/GI/WebKit2WebExtension/Objects/DOMKeyboardEvent.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMKeyboardEvent.hs
@@ -0,0 +1,525 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMKeyboardEvent
+    ( 
+
+-- * Exported types
+    DOMKeyboardEvent(..)                    ,
+    DOMKeyboardEventK                       ,
+    toDOMKeyboardEvent                      ,
+    noDOMKeyboardEvent                      ,
+
+
+ -- * Methods
+-- ** dOMKeyboardEventGetAltGraphKey
+    dOMKeyboardEventGetAltGraphKey          ,
+
+
+-- ** dOMKeyboardEventGetAltKey
+    dOMKeyboardEventGetAltKey               ,
+
+
+-- ** dOMKeyboardEventGetCtrlKey
+    dOMKeyboardEventGetCtrlKey              ,
+
+
+-- ** dOMKeyboardEventGetKeyIdentifier
+    dOMKeyboardEventGetKeyIdentifier        ,
+
+
+-- ** dOMKeyboardEventGetKeyLocation
+    dOMKeyboardEventGetKeyLocation          ,
+
+
+-- ** dOMKeyboardEventGetMetaKey
+    dOMKeyboardEventGetMetaKey              ,
+
+
+-- ** dOMKeyboardEventGetModifierState
+    dOMKeyboardEventGetModifierState        ,
+
+
+-- ** dOMKeyboardEventGetShiftKey
+    dOMKeyboardEventGetShiftKey             ,
+
+
+-- ** dOMKeyboardEventInitKeyboardEvent
+    dOMKeyboardEventInitKeyboardEvent       ,
+
+
+
+
+ -- * Properties
+-- ** AltGraphKey
+    DOMKeyboardEventAltGraphKeyPropertyInfo ,
+    getDOMKeyboardEventAltGraphKey          ,
+
+
+-- ** AltKey
+    DOMKeyboardEventAltKeyPropertyInfo      ,
+    getDOMKeyboardEventAltKey               ,
+
+
+-- ** CtrlKey
+    DOMKeyboardEventCtrlKeyPropertyInfo     ,
+    getDOMKeyboardEventCtrlKey              ,
+
+
+-- ** KeyIdentifier
+    DOMKeyboardEventKeyIdentifierPropertyInfo,
+    getDOMKeyboardEventKeyIdentifier        ,
+
+
+-- ** KeyLocation
+    DOMKeyboardEventKeyLocationPropertyInfo ,
+    getDOMKeyboardEventKeyLocation          ,
+
+
+-- ** MetaKey
+    DOMKeyboardEventMetaKeyPropertyInfo     ,
+    getDOMKeyboardEventMetaKey              ,
+
+
+-- ** ShiftKey
+    DOMKeyboardEventShiftKeyPropertyInfo    ,
+    getDOMKeyboardEventShiftKey             ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMKeyboardEvent = DOMKeyboardEvent (ForeignPtr DOMKeyboardEvent)
+foreign import ccall "webkit_dom_keyboard_event_get_type"
+    c_webkit_dom_keyboard_event_get_type :: IO GType
+
+type instance ParentTypes DOMKeyboardEvent = DOMKeyboardEventParentTypes
+type DOMKeyboardEventParentTypes = '[DOMUIEvent, DOMEvent, DOMObject, GObject.Object]
+
+instance GObject DOMKeyboardEvent where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_keyboard_event_get_type
+    
+
+class GObject o => DOMKeyboardEventK o
+instance (GObject o, IsDescendantOf DOMKeyboardEvent o) => DOMKeyboardEventK o
+
+toDOMKeyboardEvent :: DOMKeyboardEventK o => o -> IO DOMKeyboardEvent
+toDOMKeyboardEvent = unsafeCastTo DOMKeyboardEvent
+
+noDOMKeyboardEvent :: Maybe DOMKeyboardEvent
+noDOMKeyboardEvent = Nothing
+
+-- VVV Prop "alt-graph-key"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMKeyboardEventAltGraphKey :: (MonadIO m, DOMKeyboardEventK o) => o -> m Bool
+getDOMKeyboardEventAltGraphKey obj = liftIO $ getObjectPropertyBool obj "alt-graph-key"
+
+data DOMKeyboardEventAltGraphKeyPropertyInfo
+instance AttrInfo DOMKeyboardEventAltGraphKeyPropertyInfo where
+    type AttrAllowedOps DOMKeyboardEventAltGraphKeyPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMKeyboardEventAltGraphKeyPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMKeyboardEventAltGraphKeyPropertyInfo = DOMKeyboardEventK
+    type AttrGetType DOMKeyboardEventAltGraphKeyPropertyInfo = Bool
+    type AttrLabel DOMKeyboardEventAltGraphKeyPropertyInfo = "DOMKeyboardEvent::alt-graph-key"
+    attrGet _ = getDOMKeyboardEventAltGraphKey
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "alt-key"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMKeyboardEventAltKey :: (MonadIO m, DOMKeyboardEventK o) => o -> m Bool
+getDOMKeyboardEventAltKey obj = liftIO $ getObjectPropertyBool obj "alt-key"
+
+data DOMKeyboardEventAltKeyPropertyInfo
+instance AttrInfo DOMKeyboardEventAltKeyPropertyInfo where
+    type AttrAllowedOps DOMKeyboardEventAltKeyPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMKeyboardEventAltKeyPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMKeyboardEventAltKeyPropertyInfo = DOMKeyboardEventK
+    type AttrGetType DOMKeyboardEventAltKeyPropertyInfo = Bool
+    type AttrLabel DOMKeyboardEventAltKeyPropertyInfo = "DOMKeyboardEvent::alt-key"
+    attrGet _ = getDOMKeyboardEventAltKey
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "ctrl-key"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMKeyboardEventCtrlKey :: (MonadIO m, DOMKeyboardEventK o) => o -> m Bool
+getDOMKeyboardEventCtrlKey obj = liftIO $ getObjectPropertyBool obj "ctrl-key"
+
+data DOMKeyboardEventCtrlKeyPropertyInfo
+instance AttrInfo DOMKeyboardEventCtrlKeyPropertyInfo where
+    type AttrAllowedOps DOMKeyboardEventCtrlKeyPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMKeyboardEventCtrlKeyPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMKeyboardEventCtrlKeyPropertyInfo = DOMKeyboardEventK
+    type AttrGetType DOMKeyboardEventCtrlKeyPropertyInfo = Bool
+    type AttrLabel DOMKeyboardEventCtrlKeyPropertyInfo = "DOMKeyboardEvent::ctrl-key"
+    attrGet _ = getDOMKeyboardEventCtrlKey
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "key-identifier"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMKeyboardEventKeyIdentifier :: (MonadIO m, DOMKeyboardEventK o) => o -> m T.Text
+getDOMKeyboardEventKeyIdentifier obj = liftIO $ getObjectPropertyString obj "key-identifier"
+
+data DOMKeyboardEventKeyIdentifierPropertyInfo
+instance AttrInfo DOMKeyboardEventKeyIdentifierPropertyInfo where
+    type AttrAllowedOps DOMKeyboardEventKeyIdentifierPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMKeyboardEventKeyIdentifierPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMKeyboardEventKeyIdentifierPropertyInfo = DOMKeyboardEventK
+    type AttrGetType DOMKeyboardEventKeyIdentifierPropertyInfo = T.Text
+    type AttrLabel DOMKeyboardEventKeyIdentifierPropertyInfo = "DOMKeyboardEvent::key-identifier"
+    attrGet _ = getDOMKeyboardEventKeyIdentifier
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "key-location"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMKeyboardEventKeyLocation :: (MonadIO m, DOMKeyboardEventK o) => o -> m Word64
+getDOMKeyboardEventKeyLocation obj = liftIO $ getObjectPropertyUInt64 obj "key-location"
+
+data DOMKeyboardEventKeyLocationPropertyInfo
+instance AttrInfo DOMKeyboardEventKeyLocationPropertyInfo where
+    type AttrAllowedOps DOMKeyboardEventKeyLocationPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMKeyboardEventKeyLocationPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMKeyboardEventKeyLocationPropertyInfo = DOMKeyboardEventK
+    type AttrGetType DOMKeyboardEventKeyLocationPropertyInfo = Word64
+    type AttrLabel DOMKeyboardEventKeyLocationPropertyInfo = "DOMKeyboardEvent::key-location"
+    attrGet _ = getDOMKeyboardEventKeyLocation
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "meta-key"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMKeyboardEventMetaKey :: (MonadIO m, DOMKeyboardEventK o) => o -> m Bool
+getDOMKeyboardEventMetaKey obj = liftIO $ getObjectPropertyBool obj "meta-key"
+
+data DOMKeyboardEventMetaKeyPropertyInfo
+instance AttrInfo DOMKeyboardEventMetaKeyPropertyInfo where
+    type AttrAllowedOps DOMKeyboardEventMetaKeyPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMKeyboardEventMetaKeyPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMKeyboardEventMetaKeyPropertyInfo = DOMKeyboardEventK
+    type AttrGetType DOMKeyboardEventMetaKeyPropertyInfo = Bool
+    type AttrLabel DOMKeyboardEventMetaKeyPropertyInfo = "DOMKeyboardEvent::meta-key"
+    attrGet _ = getDOMKeyboardEventMetaKey
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "shift-key"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMKeyboardEventShiftKey :: (MonadIO m, DOMKeyboardEventK o) => o -> m Bool
+getDOMKeyboardEventShiftKey obj = liftIO $ getObjectPropertyBool obj "shift-key"
+
+data DOMKeyboardEventShiftKeyPropertyInfo
+instance AttrInfo DOMKeyboardEventShiftKeyPropertyInfo where
+    type AttrAllowedOps DOMKeyboardEventShiftKeyPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMKeyboardEventShiftKeyPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMKeyboardEventShiftKeyPropertyInfo = DOMKeyboardEventK
+    type AttrGetType DOMKeyboardEventShiftKeyPropertyInfo = Bool
+    type AttrLabel DOMKeyboardEventShiftKeyPropertyInfo = "DOMKeyboardEvent::shift-key"
+    attrGet _ = getDOMKeyboardEventShiftKey
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMKeyboardEvent = DOMKeyboardEventAttributeList
+type DOMKeyboardEventAttributeList = ('[ '("alt-graph-key", DOMKeyboardEventAltGraphKeyPropertyInfo), '("alt-key", DOMKeyboardEventAltKeyPropertyInfo), '("bubbles", DOMEventBubblesPropertyInfo), '("cancel-bubble", DOMEventCancelBubblePropertyInfo), '("cancelable", DOMEventCancelablePropertyInfo), '("char-code", DOMUIEventCharCodePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("ctrl-key", DOMKeyboardEventCtrlKeyPropertyInfo), '("current-target", DOMEventCurrentTargetPropertyInfo), '("default-prevented", DOMEventDefaultPreventedPropertyInfo), '("detail", DOMUIEventDetailPropertyInfo), '("event-phase", DOMEventEventPhasePropertyInfo), '("key-code", DOMUIEventKeyCodePropertyInfo), '("key-identifier", DOMKeyboardEventKeyIdentifierPropertyInfo), '("key-location", DOMKeyboardEventKeyLocationPropertyInfo), '("layer-x", DOMUIEventLayerXPropertyInfo), '("layer-y", DOMUIEventLayerYPropertyInfo), '("meta-key", DOMKeyboardEventMetaKeyPropertyInfo), '("page-x", DOMUIEventPageXPropertyInfo), '("page-y", DOMUIEventPageYPropertyInfo), '("return-value", DOMEventReturnValuePropertyInfo), '("shift-key", DOMKeyboardEventShiftKeyPropertyInfo), '("src-element", DOMEventSrcElementPropertyInfo), '("target", DOMEventTargetPropertyInfo), '("time-stamp", DOMEventTimeStampPropertyInfo), '("type", DOMEventTypePropertyInfo), '("view", DOMUIEventViewPropertyInfo), '("which", DOMUIEventWhichPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMKeyboardEvent = DOMKeyboardEventSignalList
+type DOMKeyboardEventSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMKeyboardEvent::get_alt_graph_key
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_keyboard_event_get_alt_graph_key" webkit_dom_keyboard_event_get_alt_graph_key :: 
+    Ptr DOMKeyboardEvent ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMKeyboardEvent"
+    IO CInt
+
+
+dOMKeyboardEventGetAltGraphKey ::
+    (MonadIO m, DOMKeyboardEventK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMKeyboardEventGetAltGraphKey _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_keyboard_event_get_alt_graph_key _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMKeyboardEvent::get_alt_key
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_keyboard_event_get_alt_key" webkit_dom_keyboard_event_get_alt_key :: 
+    Ptr DOMKeyboardEvent ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMKeyboardEvent"
+    IO CInt
+
+
+dOMKeyboardEventGetAltKey ::
+    (MonadIO m, DOMKeyboardEventK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMKeyboardEventGetAltKey _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_keyboard_event_get_alt_key _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMKeyboardEvent::get_ctrl_key
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_keyboard_event_get_ctrl_key" webkit_dom_keyboard_event_get_ctrl_key :: 
+    Ptr DOMKeyboardEvent ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMKeyboardEvent"
+    IO CInt
+
+
+dOMKeyboardEventGetCtrlKey ::
+    (MonadIO m, DOMKeyboardEventK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMKeyboardEventGetCtrlKey _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_keyboard_event_get_ctrl_key _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMKeyboardEvent::get_key_identifier
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_keyboard_event_get_key_identifier" webkit_dom_keyboard_event_get_key_identifier :: 
+    Ptr DOMKeyboardEvent ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMKeyboardEvent"
+    IO CString
+
+
+dOMKeyboardEventGetKeyIdentifier ::
+    (MonadIO m, DOMKeyboardEventK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMKeyboardEventGetKeyIdentifier _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_keyboard_event_get_key_identifier _obj'
+    checkUnexpectedReturnNULL "webkit_dom_keyboard_event_get_key_identifier" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMKeyboardEvent::get_key_location
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_keyboard_event_get_key_location" webkit_dom_keyboard_event_get_key_location :: 
+    Ptr DOMKeyboardEvent ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMKeyboardEvent"
+    IO Word64
+
+
+dOMKeyboardEventGetKeyLocation ::
+    (MonadIO m, DOMKeyboardEventK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMKeyboardEventGetKeyLocation _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_keyboard_event_get_key_location _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMKeyboardEvent::get_meta_key
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_keyboard_event_get_meta_key" webkit_dom_keyboard_event_get_meta_key :: 
+    Ptr DOMKeyboardEvent ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMKeyboardEvent"
+    IO CInt
+
+
+dOMKeyboardEventGetMetaKey ::
+    (MonadIO m, DOMKeyboardEventK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMKeyboardEventGetMetaKey _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_keyboard_event_get_meta_key _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMKeyboardEvent::get_modifier_state
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "keyIdentifierArg", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "keyIdentifierArg", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_keyboard_event_get_modifier_state" webkit_dom_keyboard_event_get_modifier_state :: 
+    Ptr DOMKeyboardEvent ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMKeyboardEvent"
+    CString ->                              -- keyIdentifierArg : TBasicType TUTF8
+    IO CInt
+
+
+dOMKeyboardEventGetModifierState ::
+    (MonadIO m, DOMKeyboardEventK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- keyIdentifierArg
+    m Bool
+dOMKeyboardEventGetModifierState _obj keyIdentifierArg = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    keyIdentifierArg' <- textToCString keyIdentifierArg
+    result <- webkit_dom_keyboard_event_get_modifier_state _obj' keyIdentifierArg'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    freeMem keyIdentifierArg'
+    return result'
+
+-- method DOMKeyboardEvent::get_shift_key
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_keyboard_event_get_shift_key" webkit_dom_keyboard_event_get_shift_key :: 
+    Ptr DOMKeyboardEvent ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMKeyboardEvent"
+    IO CInt
+
+
+dOMKeyboardEventGetShiftKey ::
+    (MonadIO m, DOMKeyboardEventK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMKeyboardEventGetShiftKey _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_keyboard_event_get_shift_key _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMKeyboardEvent::init_keyboard_event
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "type", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "canBubble", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancelable", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "view", argType = TInterface "WebKit2WebExtension" "DOMDOMWindow", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "keyIdentifier", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "location", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ctrlKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "altKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "shiftKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "metaKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "altGraphKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMKeyboardEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "type", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "canBubble", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancelable", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "view", argType = TInterface "WebKit2WebExtension" "DOMDOMWindow", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "keyIdentifier", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "location", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ctrlKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "altKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "shiftKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "metaKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "altGraphKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_keyboard_event_init_keyboard_event" webkit_dom_keyboard_event_init_keyboard_event :: 
+    Ptr DOMKeyboardEvent ->                 -- _obj : TInterface "WebKit2WebExtension" "DOMKeyboardEvent"
+    CString ->                              -- type : TBasicType TUTF8
+    CInt ->                                 -- canBubble : TBasicType TBoolean
+    CInt ->                                 -- cancelable : TBasicType TBoolean
+    Ptr DOMDOMWindow ->                     -- view : TInterface "WebKit2WebExtension" "DOMDOMWindow"
+    CString ->                              -- keyIdentifier : TBasicType TUTF8
+    Word64 ->                               -- location : TBasicType TUInt64
+    CInt ->                                 -- ctrlKey : TBasicType TBoolean
+    CInt ->                                 -- altKey : TBasicType TBoolean
+    CInt ->                                 -- shiftKey : TBasicType TBoolean
+    CInt ->                                 -- metaKey : TBasicType TBoolean
+    CInt ->                                 -- altGraphKey : TBasicType TBoolean
+    IO ()
+
+
+dOMKeyboardEventInitKeyboardEvent ::
+    (MonadIO m, DOMKeyboardEventK a, DOMDOMWindowK b) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- type
+    Bool ->                                 -- canBubble
+    Bool ->                                 -- cancelable
+    b ->                                    -- view
+    T.Text ->                               -- keyIdentifier
+    Word64 ->                               -- location
+    Bool ->                                 -- ctrlKey
+    Bool ->                                 -- altKey
+    Bool ->                                 -- shiftKey
+    Bool ->                                 -- metaKey
+    Bool ->                                 -- altGraphKey
+    m ()
+dOMKeyboardEventInitKeyboardEvent _obj type_ canBubble cancelable view keyIdentifier location ctrlKey altKey shiftKey metaKey altGraphKey = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    type_' <- textToCString type_
+    let canBubble' = (fromIntegral . fromEnum) canBubble
+    let cancelable' = (fromIntegral . fromEnum) cancelable
+    let view' = unsafeManagedPtrCastPtr view
+    keyIdentifier' <- textToCString keyIdentifier
+    let ctrlKey' = (fromIntegral . fromEnum) ctrlKey
+    let altKey' = (fromIntegral . fromEnum) altKey
+    let shiftKey' = (fromIntegral . fromEnum) shiftKey
+    let metaKey' = (fromIntegral . fromEnum) metaKey
+    let altGraphKey' = (fromIntegral . fromEnum) altGraphKey
+    webkit_dom_keyboard_event_init_keyboard_event _obj' type_' canBubble' cancelable' view' keyIdentifier' location ctrlKey' altKey' shiftKey' metaKey' altGraphKey'
+    touchManagedPtr _obj
+    touchManagedPtr view
+    freeMem type_'
+    freeMem keyIdentifier'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMKeyboardEvent.hs-boot b/GI/WebKit2WebExtension/Objects/DOMKeyboardEvent.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMKeyboardEvent.hs-boot
@@ -0,0 +1,20 @@
+module GI.WebKit2WebExtension.Objects.DOMKeyboardEvent where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMKeyboardEvent = DOMKeyboardEvent (ForeignPtr DOMKeyboardEvent)
+instance GObject DOMKeyboardEvent where
+class GObject o => DOMKeyboardEventK o
+instance (GObject o, IsDescendantOf DOMKeyboardEvent o) => DOMKeyboardEventK o
+data DOMKeyboardEventAltGraphKeyPropertyInfo
+data DOMKeyboardEventAltKeyPropertyInfo
+data DOMKeyboardEventCtrlKeyPropertyInfo
+data DOMKeyboardEventKeyIdentifierPropertyInfo
+data DOMKeyboardEventKeyLocationPropertyInfo
+data DOMKeyboardEventMetaKeyPropertyInfo
+data DOMKeyboardEventShiftKeyPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMMediaList.hs b/GI/WebKit2WebExtension/Objects/DOMMediaList.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMMediaList.hs
@@ -0,0 +1,321 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMMediaList
+    ( 
+
+-- * Exported types
+    DOMMediaList(..)                        ,
+    DOMMediaListK                           ,
+    toDOMMediaList                          ,
+    noDOMMediaList                          ,
+
+
+ -- * Methods
+-- ** dOMMediaListAppendMedium
+    dOMMediaListAppendMedium                ,
+
+
+-- ** dOMMediaListDeleteMedium
+    dOMMediaListDeleteMedium                ,
+
+
+-- ** dOMMediaListGetLength
+    dOMMediaListGetLength                   ,
+
+
+-- ** dOMMediaListGetMediaText
+    dOMMediaListGetMediaText                ,
+
+
+-- ** dOMMediaListItem
+    dOMMediaListItem                        ,
+
+
+-- ** dOMMediaListSetMediaText
+    dOMMediaListSetMediaText                ,
+
+
+
+
+ -- * Properties
+-- ** Length
+    DOMMediaListLengthPropertyInfo          ,
+    getDOMMediaListLength                   ,
+
+
+-- ** MediaText
+    DOMMediaListMediaTextPropertyInfo       ,
+    constructDOMMediaListMediaText          ,
+    getDOMMediaListMediaText                ,
+    setDOMMediaListMediaText                ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMMediaList = DOMMediaList (ForeignPtr DOMMediaList)
+foreign import ccall "webkit_dom_media_list_get_type"
+    c_webkit_dom_media_list_get_type :: IO GType
+
+type instance ParentTypes DOMMediaList = DOMMediaListParentTypes
+type DOMMediaListParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMMediaList where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_media_list_get_type
+    
+
+class GObject o => DOMMediaListK o
+instance (GObject o, IsDescendantOf DOMMediaList o) => DOMMediaListK o
+
+toDOMMediaList :: DOMMediaListK o => o -> IO DOMMediaList
+toDOMMediaList = unsafeCastTo DOMMediaList
+
+noDOMMediaList :: Maybe DOMMediaList
+noDOMMediaList = Nothing
+
+-- VVV Prop "length"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMMediaListLength :: (MonadIO m, DOMMediaListK o) => o -> m Word64
+getDOMMediaListLength obj = liftIO $ getObjectPropertyUInt64 obj "length"
+
+data DOMMediaListLengthPropertyInfo
+instance AttrInfo DOMMediaListLengthPropertyInfo where
+    type AttrAllowedOps DOMMediaListLengthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMediaListLengthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMediaListLengthPropertyInfo = DOMMediaListK
+    type AttrGetType DOMMediaListLengthPropertyInfo = Word64
+    type AttrLabel DOMMediaListLengthPropertyInfo = "DOMMediaList::length"
+    attrGet _ = getDOMMediaListLength
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "media-text"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMMediaListMediaText :: (MonadIO m, DOMMediaListK o) => o -> m T.Text
+getDOMMediaListMediaText obj = liftIO $ getObjectPropertyString obj "media-text"
+
+setDOMMediaListMediaText :: (MonadIO m, DOMMediaListK o) => o -> T.Text -> m ()
+setDOMMediaListMediaText obj val = liftIO $ setObjectPropertyString obj "media-text" val
+
+constructDOMMediaListMediaText :: T.Text -> IO ([Char], GValue)
+constructDOMMediaListMediaText val = constructObjectPropertyString "media-text" val
+
+data DOMMediaListMediaTextPropertyInfo
+instance AttrInfo DOMMediaListMediaTextPropertyInfo where
+    type AttrAllowedOps DOMMediaListMediaTextPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMMediaListMediaTextPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMMediaListMediaTextPropertyInfo = DOMMediaListK
+    type AttrGetType DOMMediaListMediaTextPropertyInfo = T.Text
+    type AttrLabel DOMMediaListMediaTextPropertyInfo = "DOMMediaList::media-text"
+    attrGet _ = getDOMMediaListMediaText
+    attrSet _ = setDOMMediaListMediaText
+    attrConstruct _ = constructDOMMediaListMediaText
+
+type instance AttributeList DOMMediaList = DOMMediaListAttributeList
+type DOMMediaListAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("length", DOMMediaListLengthPropertyInfo), '("media-text", DOMMediaListMediaTextPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMMediaList = DOMMediaListSignalList
+type DOMMediaListSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMMediaList::append_medium
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMediaList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newMedium", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMediaList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newMedium", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_media_list_append_medium" webkit_dom_media_list_append_medium :: 
+    Ptr DOMMediaList ->                     -- _obj : TInterface "WebKit2WebExtension" "DOMMediaList"
+    CString ->                              -- newMedium : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMMediaListAppendMedium ::
+    (MonadIO m, DOMMediaListK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- newMedium
+    m ()
+dOMMediaListAppendMedium _obj newMedium = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    newMedium' <- textToCString newMedium
+    onException (do
+        propagateGError $ webkit_dom_media_list_append_medium _obj' newMedium'
+        touchManagedPtr _obj
+        freeMem newMedium'
+        return ()
+     ) (do
+        freeMem newMedium'
+     )
+
+-- method DOMMediaList::delete_medium
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMediaList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "oldMedium", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMediaList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "oldMedium", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_media_list_delete_medium" webkit_dom_media_list_delete_medium :: 
+    Ptr DOMMediaList ->                     -- _obj : TInterface "WebKit2WebExtension" "DOMMediaList"
+    CString ->                              -- oldMedium : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMMediaListDeleteMedium ::
+    (MonadIO m, DOMMediaListK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- oldMedium
+    m ()
+dOMMediaListDeleteMedium _obj oldMedium = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    oldMedium' <- textToCString oldMedium
+    onException (do
+        propagateGError $ webkit_dom_media_list_delete_medium _obj' oldMedium'
+        touchManagedPtr _obj
+        freeMem oldMedium'
+        return ()
+     ) (do
+        freeMem oldMedium'
+     )
+
+-- method DOMMediaList::get_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMediaList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMediaList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_media_list_get_length" webkit_dom_media_list_get_length :: 
+    Ptr DOMMediaList ->                     -- _obj : TInterface "WebKit2WebExtension" "DOMMediaList"
+    IO Word64
+
+
+dOMMediaListGetLength ::
+    (MonadIO m, DOMMediaListK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMMediaListGetLength _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_media_list_get_length _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMMediaList::get_media_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMediaList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMediaList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_media_list_get_media_text" webkit_dom_media_list_get_media_text :: 
+    Ptr DOMMediaList ->                     -- _obj : TInterface "WebKit2WebExtension" "DOMMediaList"
+    IO CString
+
+
+dOMMediaListGetMediaText ::
+    (MonadIO m, DOMMediaListK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMMediaListGetMediaText _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_media_list_get_media_text _obj'
+    checkUnexpectedReturnNULL "webkit_dom_media_list_get_media_text" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMMediaList::item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMediaList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMediaList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_media_list_item" webkit_dom_media_list_item :: 
+    Ptr DOMMediaList ->                     -- _obj : TInterface "WebKit2WebExtension" "DOMMediaList"
+    Word64 ->                               -- index : TBasicType TUInt64
+    IO CString
+
+
+dOMMediaListItem ::
+    (MonadIO m, DOMMediaListK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- index
+    m T.Text
+dOMMediaListItem _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_media_list_item _obj' index
+    checkUnexpectedReturnNULL "webkit_dom_media_list_item" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMMediaList::set_media_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMediaList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMediaList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_media_list_set_media_text" webkit_dom_media_list_set_media_text :: 
+    Ptr DOMMediaList ->                     -- _obj : TInterface "WebKit2WebExtension" "DOMMediaList"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMMediaListSetMediaText ::
+    (MonadIO m, DOMMediaListK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMMediaListSetMediaText _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_media_list_set_media_text _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMMediaList.hs-boot b/GI/WebKit2WebExtension/Objects/DOMMediaList.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMMediaList.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMMediaList where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMMediaList = DOMMediaList (ForeignPtr DOMMediaList)
+instance GObject DOMMediaList where
+class GObject o => DOMMediaListK o
+instance (GObject o, IsDescendantOf DOMMediaList o) => DOMMediaListK o
+data DOMMediaListLengthPropertyInfo
+data DOMMediaListMediaTextPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMMouseEvent.hs b/GI/WebKit2WebExtension/Objects/DOMMouseEvent.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMMouseEvent.hs
@@ -0,0 +1,1006 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMMouseEvent
+    ( 
+
+-- * Exported types
+    DOMMouseEvent(..)                       ,
+    DOMMouseEventK                          ,
+    toDOMMouseEvent                         ,
+    noDOMMouseEvent                         ,
+
+
+ -- * Methods
+-- ** dOMMouseEventGetAltKey
+    dOMMouseEventGetAltKey                  ,
+
+
+-- ** dOMMouseEventGetButton
+    dOMMouseEventGetButton                  ,
+
+
+-- ** dOMMouseEventGetClientX
+    dOMMouseEventGetClientX                 ,
+
+
+-- ** dOMMouseEventGetClientY
+    dOMMouseEventGetClientY                 ,
+
+
+-- ** dOMMouseEventGetCtrlKey
+    dOMMouseEventGetCtrlKey                 ,
+
+
+-- ** dOMMouseEventGetFromElement
+    dOMMouseEventGetFromElement             ,
+
+
+-- ** dOMMouseEventGetMetaKey
+    dOMMouseEventGetMetaKey                 ,
+
+
+-- ** dOMMouseEventGetOffsetX
+    dOMMouseEventGetOffsetX                 ,
+
+
+-- ** dOMMouseEventGetOffsetY
+    dOMMouseEventGetOffsetY                 ,
+
+
+-- ** dOMMouseEventGetRelatedTarget
+    dOMMouseEventGetRelatedTarget           ,
+
+
+-- ** dOMMouseEventGetScreenX
+    dOMMouseEventGetScreenX                 ,
+
+
+-- ** dOMMouseEventGetScreenY
+    dOMMouseEventGetScreenY                 ,
+
+
+-- ** dOMMouseEventGetShiftKey
+    dOMMouseEventGetShiftKey                ,
+
+
+-- ** dOMMouseEventGetToElement
+    dOMMouseEventGetToElement               ,
+
+
+-- ** dOMMouseEventGetX
+    dOMMouseEventGetX                       ,
+
+
+-- ** dOMMouseEventGetY
+    dOMMouseEventGetY                       ,
+
+
+-- ** dOMMouseEventInitMouseEvent
+    dOMMouseEventInitMouseEvent             ,
+
+
+
+
+ -- * Properties
+-- ** AltKey
+    DOMMouseEventAltKeyPropertyInfo         ,
+    getDOMMouseEventAltKey                  ,
+
+
+-- ** Button
+    DOMMouseEventButtonPropertyInfo         ,
+    getDOMMouseEventButton                  ,
+
+
+-- ** ClientX
+    DOMMouseEventClientXPropertyInfo        ,
+    getDOMMouseEventClientX                 ,
+
+
+-- ** ClientY
+    DOMMouseEventClientYPropertyInfo        ,
+    getDOMMouseEventClientY                 ,
+
+
+-- ** CtrlKey
+    DOMMouseEventCtrlKeyPropertyInfo        ,
+    getDOMMouseEventCtrlKey                 ,
+
+
+-- ** FromElement
+    DOMMouseEventFromElementPropertyInfo    ,
+    getDOMMouseEventFromElement             ,
+
+
+-- ** MetaKey
+    DOMMouseEventMetaKeyPropertyInfo        ,
+    getDOMMouseEventMetaKey                 ,
+
+
+-- ** MovementX
+    DOMMouseEventMovementXPropertyInfo      ,
+    getDOMMouseEventMovementX               ,
+
+
+-- ** MovementY
+    DOMMouseEventMovementYPropertyInfo      ,
+    getDOMMouseEventMovementY               ,
+
+
+-- ** OffsetX
+    DOMMouseEventOffsetXPropertyInfo        ,
+    getDOMMouseEventOffsetX                 ,
+
+
+-- ** OffsetY
+    DOMMouseEventOffsetYPropertyInfo        ,
+    getDOMMouseEventOffsetY                 ,
+
+
+-- ** RelatedTarget
+    DOMMouseEventRelatedTargetPropertyInfo  ,
+    getDOMMouseEventRelatedTarget           ,
+
+
+-- ** ScreenX
+    DOMMouseEventScreenXPropertyInfo        ,
+    getDOMMouseEventScreenX                 ,
+
+
+-- ** ScreenY
+    DOMMouseEventScreenYPropertyInfo        ,
+    getDOMMouseEventScreenY                 ,
+
+
+-- ** ShiftKey
+    DOMMouseEventShiftKeyPropertyInfo       ,
+    getDOMMouseEventShiftKey                ,
+
+
+-- ** ToElement
+    DOMMouseEventToElementPropertyInfo      ,
+    getDOMMouseEventToElement               ,
+
+
+-- ** X
+    DOMMouseEventXPropertyInfo              ,
+    getDOMMouseEventX                       ,
+
+
+-- ** Y
+    DOMMouseEventYPropertyInfo              ,
+    getDOMMouseEventY                       ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMMouseEvent = DOMMouseEvent (ForeignPtr DOMMouseEvent)
+foreign import ccall "webkit_dom_mouse_event_get_type"
+    c_webkit_dom_mouse_event_get_type :: IO GType
+
+type instance ParentTypes DOMMouseEvent = DOMMouseEventParentTypes
+type DOMMouseEventParentTypes = '[DOMUIEvent, DOMEvent, DOMObject, GObject.Object]
+
+instance GObject DOMMouseEvent where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_mouse_event_get_type
+    
+
+class GObject o => DOMMouseEventK o
+instance (GObject o, IsDescendantOf DOMMouseEvent o) => DOMMouseEventK o
+
+toDOMMouseEvent :: DOMMouseEventK o => o -> IO DOMMouseEvent
+toDOMMouseEvent = unsafeCastTo DOMMouseEvent
+
+noDOMMouseEvent :: Maybe DOMMouseEvent
+noDOMMouseEvent = Nothing
+
+-- VVV Prop "alt-key"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventAltKey :: (MonadIO m, DOMMouseEventK o) => o -> m Bool
+getDOMMouseEventAltKey obj = liftIO $ getObjectPropertyBool obj "alt-key"
+
+data DOMMouseEventAltKeyPropertyInfo
+instance AttrInfo DOMMouseEventAltKeyPropertyInfo where
+    type AttrAllowedOps DOMMouseEventAltKeyPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventAltKeyPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventAltKeyPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventAltKeyPropertyInfo = Bool
+    type AttrLabel DOMMouseEventAltKeyPropertyInfo = "DOMMouseEvent::alt-key"
+    attrGet _ = getDOMMouseEventAltKey
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "button"
+   -- Type: TBasicType TUInt32
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventButton :: (MonadIO m, DOMMouseEventK o) => o -> m Word32
+getDOMMouseEventButton obj = liftIO $ getObjectPropertyCUInt obj "button"
+
+data DOMMouseEventButtonPropertyInfo
+instance AttrInfo DOMMouseEventButtonPropertyInfo where
+    type AttrAllowedOps DOMMouseEventButtonPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventButtonPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventButtonPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventButtonPropertyInfo = Word32
+    type AttrLabel DOMMouseEventButtonPropertyInfo = "DOMMouseEvent::button"
+    attrGet _ = getDOMMouseEventButton
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "client-x"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventClientX :: (MonadIO m, DOMMouseEventK o) => o -> m Int64
+getDOMMouseEventClientX obj = liftIO $ getObjectPropertyInt64 obj "client-x"
+
+data DOMMouseEventClientXPropertyInfo
+instance AttrInfo DOMMouseEventClientXPropertyInfo where
+    type AttrAllowedOps DOMMouseEventClientXPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventClientXPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventClientXPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventClientXPropertyInfo = Int64
+    type AttrLabel DOMMouseEventClientXPropertyInfo = "DOMMouseEvent::client-x"
+    attrGet _ = getDOMMouseEventClientX
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "client-y"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventClientY :: (MonadIO m, DOMMouseEventK o) => o -> m Int64
+getDOMMouseEventClientY obj = liftIO $ getObjectPropertyInt64 obj "client-y"
+
+data DOMMouseEventClientYPropertyInfo
+instance AttrInfo DOMMouseEventClientYPropertyInfo where
+    type AttrAllowedOps DOMMouseEventClientYPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventClientYPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventClientYPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventClientYPropertyInfo = Int64
+    type AttrLabel DOMMouseEventClientYPropertyInfo = "DOMMouseEvent::client-y"
+    attrGet _ = getDOMMouseEventClientY
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "ctrl-key"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventCtrlKey :: (MonadIO m, DOMMouseEventK o) => o -> m Bool
+getDOMMouseEventCtrlKey obj = liftIO $ getObjectPropertyBool obj "ctrl-key"
+
+data DOMMouseEventCtrlKeyPropertyInfo
+instance AttrInfo DOMMouseEventCtrlKeyPropertyInfo where
+    type AttrAllowedOps DOMMouseEventCtrlKeyPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventCtrlKeyPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventCtrlKeyPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventCtrlKeyPropertyInfo = Bool
+    type AttrLabel DOMMouseEventCtrlKeyPropertyInfo = "DOMMouseEvent::ctrl-key"
+    attrGet _ = getDOMMouseEventCtrlKey
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "from-element"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventFromElement :: (MonadIO m, DOMMouseEventK o) => o -> m DOMNode
+getDOMMouseEventFromElement obj = liftIO $ getObjectPropertyObject obj "from-element" DOMNode
+
+data DOMMouseEventFromElementPropertyInfo
+instance AttrInfo DOMMouseEventFromElementPropertyInfo where
+    type AttrAllowedOps DOMMouseEventFromElementPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventFromElementPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventFromElementPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventFromElementPropertyInfo = DOMNode
+    type AttrLabel DOMMouseEventFromElementPropertyInfo = "DOMMouseEvent::from-element"
+    attrGet _ = getDOMMouseEventFromElement
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "meta-key"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventMetaKey :: (MonadIO m, DOMMouseEventK o) => o -> m Bool
+getDOMMouseEventMetaKey obj = liftIO $ getObjectPropertyBool obj "meta-key"
+
+data DOMMouseEventMetaKeyPropertyInfo
+instance AttrInfo DOMMouseEventMetaKeyPropertyInfo where
+    type AttrAllowedOps DOMMouseEventMetaKeyPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventMetaKeyPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventMetaKeyPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventMetaKeyPropertyInfo = Bool
+    type AttrLabel DOMMouseEventMetaKeyPropertyInfo = "DOMMouseEvent::meta-key"
+    attrGet _ = getDOMMouseEventMetaKey
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "movement-x"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventMovementX :: (MonadIO m, DOMMouseEventK o) => o -> m Int64
+getDOMMouseEventMovementX obj = liftIO $ getObjectPropertyInt64 obj "movement-x"
+
+data DOMMouseEventMovementXPropertyInfo
+instance AttrInfo DOMMouseEventMovementXPropertyInfo where
+    type AttrAllowedOps DOMMouseEventMovementXPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventMovementXPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventMovementXPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventMovementXPropertyInfo = Int64
+    type AttrLabel DOMMouseEventMovementXPropertyInfo = "DOMMouseEvent::movement-x"
+    attrGet _ = getDOMMouseEventMovementX
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "movement-y"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventMovementY :: (MonadIO m, DOMMouseEventK o) => o -> m Int64
+getDOMMouseEventMovementY obj = liftIO $ getObjectPropertyInt64 obj "movement-y"
+
+data DOMMouseEventMovementYPropertyInfo
+instance AttrInfo DOMMouseEventMovementYPropertyInfo where
+    type AttrAllowedOps DOMMouseEventMovementYPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventMovementYPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventMovementYPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventMovementYPropertyInfo = Int64
+    type AttrLabel DOMMouseEventMovementYPropertyInfo = "DOMMouseEvent::movement-y"
+    attrGet _ = getDOMMouseEventMovementY
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "offset-x"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventOffsetX :: (MonadIO m, DOMMouseEventK o) => o -> m Int64
+getDOMMouseEventOffsetX obj = liftIO $ getObjectPropertyInt64 obj "offset-x"
+
+data DOMMouseEventOffsetXPropertyInfo
+instance AttrInfo DOMMouseEventOffsetXPropertyInfo where
+    type AttrAllowedOps DOMMouseEventOffsetXPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventOffsetXPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventOffsetXPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventOffsetXPropertyInfo = Int64
+    type AttrLabel DOMMouseEventOffsetXPropertyInfo = "DOMMouseEvent::offset-x"
+    attrGet _ = getDOMMouseEventOffsetX
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "offset-y"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventOffsetY :: (MonadIO m, DOMMouseEventK o) => o -> m Int64
+getDOMMouseEventOffsetY obj = liftIO $ getObjectPropertyInt64 obj "offset-y"
+
+data DOMMouseEventOffsetYPropertyInfo
+instance AttrInfo DOMMouseEventOffsetYPropertyInfo where
+    type AttrAllowedOps DOMMouseEventOffsetYPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventOffsetYPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventOffsetYPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventOffsetYPropertyInfo = Int64
+    type AttrLabel DOMMouseEventOffsetYPropertyInfo = "DOMMouseEvent::offset-y"
+    attrGet _ = getDOMMouseEventOffsetY
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "related-target"
+   -- Type: TInterface "WebKit2WebExtension" "DOMEventTarget"
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventRelatedTarget :: (MonadIO m, DOMMouseEventK o) => o -> m DOMEventTarget
+getDOMMouseEventRelatedTarget obj = liftIO $ getObjectPropertyObject obj "related-target" DOMEventTarget
+
+data DOMMouseEventRelatedTargetPropertyInfo
+instance AttrInfo DOMMouseEventRelatedTargetPropertyInfo where
+    type AttrAllowedOps DOMMouseEventRelatedTargetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventRelatedTargetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventRelatedTargetPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventRelatedTargetPropertyInfo = DOMEventTarget
+    type AttrLabel DOMMouseEventRelatedTargetPropertyInfo = "DOMMouseEvent::related-target"
+    attrGet _ = getDOMMouseEventRelatedTarget
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "screen-x"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventScreenX :: (MonadIO m, DOMMouseEventK o) => o -> m Int64
+getDOMMouseEventScreenX obj = liftIO $ getObjectPropertyInt64 obj "screen-x"
+
+data DOMMouseEventScreenXPropertyInfo
+instance AttrInfo DOMMouseEventScreenXPropertyInfo where
+    type AttrAllowedOps DOMMouseEventScreenXPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventScreenXPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventScreenXPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventScreenXPropertyInfo = Int64
+    type AttrLabel DOMMouseEventScreenXPropertyInfo = "DOMMouseEvent::screen-x"
+    attrGet _ = getDOMMouseEventScreenX
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "screen-y"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventScreenY :: (MonadIO m, DOMMouseEventK o) => o -> m Int64
+getDOMMouseEventScreenY obj = liftIO $ getObjectPropertyInt64 obj "screen-y"
+
+data DOMMouseEventScreenYPropertyInfo
+instance AttrInfo DOMMouseEventScreenYPropertyInfo where
+    type AttrAllowedOps DOMMouseEventScreenYPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventScreenYPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventScreenYPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventScreenYPropertyInfo = Int64
+    type AttrLabel DOMMouseEventScreenYPropertyInfo = "DOMMouseEvent::screen-y"
+    attrGet _ = getDOMMouseEventScreenY
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "shift-key"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventShiftKey :: (MonadIO m, DOMMouseEventK o) => o -> m Bool
+getDOMMouseEventShiftKey obj = liftIO $ getObjectPropertyBool obj "shift-key"
+
+data DOMMouseEventShiftKeyPropertyInfo
+instance AttrInfo DOMMouseEventShiftKeyPropertyInfo where
+    type AttrAllowedOps DOMMouseEventShiftKeyPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventShiftKeyPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventShiftKeyPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventShiftKeyPropertyInfo = Bool
+    type AttrLabel DOMMouseEventShiftKeyPropertyInfo = "DOMMouseEvent::shift-key"
+    attrGet _ = getDOMMouseEventShiftKey
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "to-element"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventToElement :: (MonadIO m, DOMMouseEventK o) => o -> m DOMNode
+getDOMMouseEventToElement obj = liftIO $ getObjectPropertyObject obj "to-element" DOMNode
+
+data DOMMouseEventToElementPropertyInfo
+instance AttrInfo DOMMouseEventToElementPropertyInfo where
+    type AttrAllowedOps DOMMouseEventToElementPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventToElementPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventToElementPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventToElementPropertyInfo = DOMNode
+    type AttrLabel DOMMouseEventToElementPropertyInfo = "DOMMouseEvent::to-element"
+    attrGet _ = getDOMMouseEventToElement
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "x"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventX :: (MonadIO m, DOMMouseEventK o) => o -> m Int64
+getDOMMouseEventX obj = liftIO $ getObjectPropertyInt64 obj "x"
+
+data DOMMouseEventXPropertyInfo
+instance AttrInfo DOMMouseEventXPropertyInfo where
+    type AttrAllowedOps DOMMouseEventXPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventXPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventXPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventXPropertyInfo = Int64
+    type AttrLabel DOMMouseEventXPropertyInfo = "DOMMouseEvent::x"
+    attrGet _ = getDOMMouseEventX
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "y"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMMouseEventY :: (MonadIO m, DOMMouseEventK o) => o -> m Int64
+getDOMMouseEventY obj = liftIO $ getObjectPropertyInt64 obj "y"
+
+data DOMMouseEventYPropertyInfo
+instance AttrInfo DOMMouseEventYPropertyInfo where
+    type AttrAllowedOps DOMMouseEventYPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMMouseEventYPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMMouseEventYPropertyInfo = DOMMouseEventK
+    type AttrGetType DOMMouseEventYPropertyInfo = Int64
+    type AttrLabel DOMMouseEventYPropertyInfo = "DOMMouseEvent::y"
+    attrGet _ = getDOMMouseEventY
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMMouseEvent = DOMMouseEventAttributeList
+type DOMMouseEventAttributeList = ('[ '("alt-key", DOMMouseEventAltKeyPropertyInfo), '("bubbles", DOMEventBubblesPropertyInfo), '("button", DOMMouseEventButtonPropertyInfo), '("cancel-bubble", DOMEventCancelBubblePropertyInfo), '("cancelable", DOMEventCancelablePropertyInfo), '("char-code", DOMUIEventCharCodePropertyInfo), '("client-x", DOMMouseEventClientXPropertyInfo), '("client-y", DOMMouseEventClientYPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("ctrl-key", DOMMouseEventCtrlKeyPropertyInfo), '("current-target", DOMEventCurrentTargetPropertyInfo), '("default-prevented", DOMEventDefaultPreventedPropertyInfo), '("detail", DOMUIEventDetailPropertyInfo), '("event-phase", DOMEventEventPhasePropertyInfo), '("from-element", DOMMouseEventFromElementPropertyInfo), '("key-code", DOMUIEventKeyCodePropertyInfo), '("layer-x", DOMUIEventLayerXPropertyInfo), '("layer-y", DOMUIEventLayerYPropertyInfo), '("meta-key", DOMMouseEventMetaKeyPropertyInfo), '("movement-x", DOMMouseEventMovementXPropertyInfo), '("movement-y", DOMMouseEventMovementYPropertyInfo), '("offset-x", DOMMouseEventOffsetXPropertyInfo), '("offset-y", DOMMouseEventOffsetYPropertyInfo), '("page-x", DOMUIEventPageXPropertyInfo), '("page-y", DOMUIEventPageYPropertyInfo), '("related-target", DOMMouseEventRelatedTargetPropertyInfo), '("return-value", DOMEventReturnValuePropertyInfo), '("screen-x", DOMMouseEventScreenXPropertyInfo), '("screen-y", DOMMouseEventScreenYPropertyInfo), '("shift-key", DOMMouseEventShiftKeyPropertyInfo), '("src-element", DOMEventSrcElementPropertyInfo), '("target", DOMEventTargetPropertyInfo), '("time-stamp", DOMEventTimeStampPropertyInfo), '("to-element", DOMMouseEventToElementPropertyInfo), '("type", DOMEventTypePropertyInfo), '("view", DOMUIEventViewPropertyInfo), '("which", DOMUIEventWhichPropertyInfo), '("x", DOMMouseEventXPropertyInfo), '("y", DOMMouseEventYPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMMouseEvent = DOMMouseEventSignalList
+type DOMMouseEventSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMMouseEvent::get_alt_key
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_alt_key" webkit_dom_mouse_event_get_alt_key :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO CInt
+
+
+dOMMouseEventGetAltKey ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMMouseEventGetAltKey _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_alt_key _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMMouseEvent::get_button
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt16
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_button" webkit_dom_mouse_event_get_button :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO Word16
+
+
+dOMMouseEventGetButton ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m Word16
+dOMMouseEventGetButton _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_button _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMMouseEvent::get_client_x
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_client_x" webkit_dom_mouse_event_get_client_x :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO Int64
+
+
+dOMMouseEventGetClientX ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMMouseEventGetClientX _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_client_x _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMMouseEvent::get_client_y
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_client_y" webkit_dom_mouse_event_get_client_y :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO Int64
+
+
+dOMMouseEventGetClientY ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMMouseEventGetClientY _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_client_y _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMMouseEvent::get_ctrl_key
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_ctrl_key" webkit_dom_mouse_event_get_ctrl_key :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO CInt
+
+
+dOMMouseEventGetCtrlKey ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMMouseEventGetCtrlKey _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_ctrl_key _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMMouseEvent::get_from_element
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_from_element" webkit_dom_mouse_event_get_from_element :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO (Ptr DOMNode)
+
+
+dOMMouseEventGetFromElement ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMMouseEventGetFromElement _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_from_element _obj'
+    checkUnexpectedReturnNULL "webkit_dom_mouse_event_get_from_element" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMMouseEvent::get_meta_key
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_meta_key" webkit_dom_mouse_event_get_meta_key :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO CInt
+
+
+dOMMouseEventGetMetaKey ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMMouseEventGetMetaKey _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_meta_key _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMMouseEvent::get_offset_x
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_offset_x" webkit_dom_mouse_event_get_offset_x :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO Int64
+
+
+dOMMouseEventGetOffsetX ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMMouseEventGetOffsetX _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_offset_x _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMMouseEvent::get_offset_y
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_offset_y" webkit_dom_mouse_event_get_offset_y :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO Int64
+
+
+dOMMouseEventGetOffsetY ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMMouseEventGetOffsetY _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_offset_y _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMMouseEvent::get_related_target
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMEventTarget"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_related_target" webkit_dom_mouse_event_get_related_target :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO (Ptr DOMEventTarget)
+
+
+dOMMouseEventGetRelatedTarget ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m DOMEventTarget
+dOMMouseEventGetRelatedTarget _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_related_target _obj'
+    checkUnexpectedReturnNULL "webkit_dom_mouse_event_get_related_target" result
+    result' <- (wrapObject DOMEventTarget) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMMouseEvent::get_screen_x
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_screen_x" webkit_dom_mouse_event_get_screen_x :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO Int64
+
+
+dOMMouseEventGetScreenX ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMMouseEventGetScreenX _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_screen_x _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMMouseEvent::get_screen_y
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_screen_y" webkit_dom_mouse_event_get_screen_y :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO Int64
+
+
+dOMMouseEventGetScreenY ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMMouseEventGetScreenY _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_screen_y _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMMouseEvent::get_shift_key
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_shift_key" webkit_dom_mouse_event_get_shift_key :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO CInt
+
+
+dOMMouseEventGetShiftKey ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMMouseEventGetShiftKey _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_shift_key _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMMouseEvent::get_to_element
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_to_element" webkit_dom_mouse_event_get_to_element :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO (Ptr DOMNode)
+
+
+dOMMouseEventGetToElement ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMMouseEventGetToElement _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_to_element _obj'
+    checkUnexpectedReturnNULL "webkit_dom_mouse_event_get_to_element" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMMouseEvent::get_x
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_x" webkit_dom_mouse_event_get_x :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO Int64
+
+
+dOMMouseEventGetX ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMMouseEventGetX _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_x _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMMouseEvent::get_y
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_get_y" webkit_dom_mouse_event_get_y :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    IO Int64
+
+
+dOMMouseEventGetY ::
+    (MonadIO m, DOMMouseEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMMouseEventGetY _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_mouse_event_get_y _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMMouseEvent::init_mouse_event
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "type", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "canBubble", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancelable", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "view", argType = TInterface "WebKit2WebExtension" "DOMDOMWindow", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "detail", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "screenX", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "screenY", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "clientX", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "clientY", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ctrlKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "altKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "shiftKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "metaKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "button", argType = TBasicType TUInt16, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "relatedTarget", argType = TInterface "WebKit2WebExtension" "DOMEventTarget", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMMouseEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "type", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "canBubble", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancelable", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "view", argType = TInterface "WebKit2WebExtension" "DOMDOMWindow", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "detail", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "screenX", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "screenY", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "clientX", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "clientY", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ctrlKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "altKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "shiftKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "metaKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "button", argType = TBasicType TUInt16, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "relatedTarget", argType = TInterface "WebKit2WebExtension" "DOMEventTarget", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_mouse_event_init_mouse_event" webkit_dom_mouse_event_init_mouse_event :: 
+    Ptr DOMMouseEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMMouseEvent"
+    CString ->                              -- type : TBasicType TUTF8
+    CInt ->                                 -- canBubble : TBasicType TBoolean
+    CInt ->                                 -- cancelable : TBasicType TBoolean
+    Ptr DOMDOMWindow ->                     -- view : TInterface "WebKit2WebExtension" "DOMDOMWindow"
+    Int64 ->                                -- detail : TBasicType TInt64
+    Int64 ->                                -- screenX : TBasicType TInt64
+    Int64 ->                                -- screenY : TBasicType TInt64
+    Int64 ->                                -- clientX : TBasicType TInt64
+    Int64 ->                                -- clientY : TBasicType TInt64
+    CInt ->                                 -- ctrlKey : TBasicType TBoolean
+    CInt ->                                 -- altKey : TBasicType TBoolean
+    CInt ->                                 -- shiftKey : TBasicType TBoolean
+    CInt ->                                 -- metaKey : TBasicType TBoolean
+    Word16 ->                               -- button : TBasicType TUInt16
+    Ptr DOMEventTarget ->                   -- relatedTarget : TInterface "WebKit2WebExtension" "DOMEventTarget"
+    IO ()
+
+
+dOMMouseEventInitMouseEvent ::
+    (MonadIO m, DOMMouseEventK a, DOMDOMWindowK b, DOMEventTargetK c) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- type
+    Bool ->                                 -- canBubble
+    Bool ->                                 -- cancelable
+    b ->                                    -- view
+    Int64 ->                                -- detail
+    Int64 ->                                -- screenX
+    Int64 ->                                -- screenY
+    Int64 ->                                -- clientX
+    Int64 ->                                -- clientY
+    Bool ->                                 -- ctrlKey
+    Bool ->                                 -- altKey
+    Bool ->                                 -- shiftKey
+    Bool ->                                 -- metaKey
+    Word16 ->                               -- button
+    c ->                                    -- relatedTarget
+    m ()
+dOMMouseEventInitMouseEvent _obj type_ canBubble cancelable view detail screenX screenY clientX clientY ctrlKey altKey shiftKey metaKey button relatedTarget = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    type_' <- textToCString type_
+    let canBubble' = (fromIntegral . fromEnum) canBubble
+    let cancelable' = (fromIntegral . fromEnum) cancelable
+    let view' = unsafeManagedPtrCastPtr view
+    let ctrlKey' = (fromIntegral . fromEnum) ctrlKey
+    let altKey' = (fromIntegral . fromEnum) altKey
+    let shiftKey' = (fromIntegral . fromEnum) shiftKey
+    let metaKey' = (fromIntegral . fromEnum) metaKey
+    let relatedTarget' = unsafeManagedPtrCastPtr relatedTarget
+    webkit_dom_mouse_event_init_mouse_event _obj' type_' canBubble' cancelable' view' detail screenX screenY clientX clientY ctrlKey' altKey' shiftKey' metaKey' button relatedTarget'
+    touchManagedPtr _obj
+    touchManagedPtr view
+    touchManagedPtr relatedTarget
+    freeMem type_'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMMouseEvent.hs-boot b/GI/WebKit2WebExtension/Objects/DOMMouseEvent.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMMouseEvent.hs-boot
@@ -0,0 +1,31 @@
+module GI.WebKit2WebExtension.Objects.DOMMouseEvent where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMMouseEvent = DOMMouseEvent (ForeignPtr DOMMouseEvent)
+instance GObject DOMMouseEvent where
+class GObject o => DOMMouseEventK o
+instance (GObject o, IsDescendantOf DOMMouseEvent o) => DOMMouseEventK o
+data DOMMouseEventAltKeyPropertyInfo
+data DOMMouseEventButtonPropertyInfo
+data DOMMouseEventClientXPropertyInfo
+data DOMMouseEventClientYPropertyInfo
+data DOMMouseEventCtrlKeyPropertyInfo
+data DOMMouseEventFromElementPropertyInfo
+data DOMMouseEventMetaKeyPropertyInfo
+data DOMMouseEventMovementXPropertyInfo
+data DOMMouseEventMovementYPropertyInfo
+data DOMMouseEventOffsetXPropertyInfo
+data DOMMouseEventOffsetYPropertyInfo
+data DOMMouseEventRelatedTargetPropertyInfo
+data DOMMouseEventScreenXPropertyInfo
+data DOMMouseEventScreenYPropertyInfo
+data DOMMouseEventShiftKeyPropertyInfo
+data DOMMouseEventToElementPropertyInfo
+data DOMMouseEventXPropertyInfo
+data DOMMouseEventYPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMNamedNodeMap.hs b/GI/WebKit2WebExtension/Objects/DOMNamedNodeMap.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMNamedNodeMap.hs
@@ -0,0 +1,380 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMNamedNodeMap
+    ( 
+
+-- * Exported types
+    DOMNamedNodeMap(..)                     ,
+    DOMNamedNodeMapK                        ,
+    toDOMNamedNodeMap                       ,
+    noDOMNamedNodeMap                       ,
+
+
+ -- * Methods
+-- ** dOMNamedNodeMapGetLength
+    dOMNamedNodeMapGetLength                ,
+
+
+-- ** dOMNamedNodeMapGetNamedItem
+    dOMNamedNodeMapGetNamedItem             ,
+
+
+-- ** dOMNamedNodeMapGetNamedItemNs
+    dOMNamedNodeMapGetNamedItemNs           ,
+
+
+-- ** dOMNamedNodeMapItem
+    dOMNamedNodeMapItem                     ,
+
+
+-- ** dOMNamedNodeMapRemoveNamedItem
+    dOMNamedNodeMapRemoveNamedItem          ,
+
+
+-- ** dOMNamedNodeMapRemoveNamedItemNs
+    dOMNamedNodeMapRemoveNamedItemNs        ,
+
+
+-- ** dOMNamedNodeMapSetNamedItem
+    dOMNamedNodeMapSetNamedItem             ,
+
+
+-- ** dOMNamedNodeMapSetNamedItemNs
+    dOMNamedNodeMapSetNamedItemNs           ,
+
+
+
+
+ -- * Properties
+-- ** Length
+    DOMNamedNodeMapLengthPropertyInfo       ,
+    getDOMNamedNodeMapLength                ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMNamedNodeMap = DOMNamedNodeMap (ForeignPtr DOMNamedNodeMap)
+foreign import ccall "webkit_dom_named_node_map_get_type"
+    c_webkit_dom_named_node_map_get_type :: IO GType
+
+type instance ParentTypes DOMNamedNodeMap = DOMNamedNodeMapParentTypes
+type DOMNamedNodeMapParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMNamedNodeMap where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_named_node_map_get_type
+    
+
+class GObject o => DOMNamedNodeMapK o
+instance (GObject o, IsDescendantOf DOMNamedNodeMap o) => DOMNamedNodeMapK o
+
+toDOMNamedNodeMap :: DOMNamedNodeMapK o => o -> IO DOMNamedNodeMap
+toDOMNamedNodeMap = unsafeCastTo DOMNamedNodeMap
+
+noDOMNamedNodeMap :: Maybe DOMNamedNodeMap
+noDOMNamedNodeMap = Nothing
+
+-- VVV Prop "length"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMNamedNodeMapLength :: (MonadIO m, DOMNamedNodeMapK o) => o -> m Word64
+getDOMNamedNodeMapLength obj = liftIO $ getObjectPropertyUInt64 obj "length"
+
+data DOMNamedNodeMapLengthPropertyInfo
+instance AttrInfo DOMNamedNodeMapLengthPropertyInfo where
+    type AttrAllowedOps DOMNamedNodeMapLengthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNamedNodeMapLengthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNamedNodeMapLengthPropertyInfo = DOMNamedNodeMapK
+    type AttrGetType DOMNamedNodeMapLengthPropertyInfo = Word64
+    type AttrLabel DOMNamedNodeMapLengthPropertyInfo = "DOMNamedNodeMap::length"
+    attrGet _ = getDOMNamedNodeMapLength
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMNamedNodeMap = DOMNamedNodeMapAttributeList
+type DOMNamedNodeMapAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("length", DOMNamedNodeMapLengthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMNamedNodeMap = DOMNamedNodeMapSignalList
+type DOMNamedNodeMapSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMNamedNodeMap::get_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_named_node_map_get_length" webkit_dom_named_node_map_get_length :: 
+    Ptr DOMNamedNodeMap ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNamedNodeMap"
+    IO Word64
+
+
+dOMNamedNodeMapGetLength ::
+    (MonadIO m, DOMNamedNodeMapK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMNamedNodeMapGetLength _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_named_node_map_get_length _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMNamedNodeMap::get_named_item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_named_node_map_get_named_item" webkit_dom_named_node_map_get_named_item :: 
+    Ptr DOMNamedNodeMap ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNamedNodeMap"
+    CString ->                              -- name : TBasicType TUTF8
+    IO (Ptr DOMNode)
+
+
+dOMNamedNodeMapGetNamedItem ::
+    (MonadIO m, DOMNamedNodeMapK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- name
+    m DOMNode
+dOMNamedNodeMapGetNamedItem _obj name = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    name' <- textToCString name
+    result <- webkit_dom_named_node_map_get_named_item _obj' name'
+    checkUnexpectedReturnNULL "webkit_dom_named_node_map_get_named_item" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    freeMem name'
+    return result'
+
+-- method DOMNamedNodeMap::get_named_item_ns
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_named_node_map_get_named_item_ns" webkit_dom_named_node_map_get_named_item_ns :: 
+    Ptr DOMNamedNodeMap ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNamedNodeMap"
+    CString ->                              -- namespaceURI : TBasicType TUTF8
+    CString ->                              -- localName : TBasicType TUTF8
+    IO (Ptr DOMNode)
+
+
+dOMNamedNodeMapGetNamedItemNs ::
+    (MonadIO m, DOMNamedNodeMapK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- namespaceURI
+    T.Text ->                               -- localName
+    m DOMNode
+dOMNamedNodeMapGetNamedItemNs _obj namespaceURI localName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    namespaceURI' <- textToCString namespaceURI
+    localName' <- textToCString localName
+    result <- webkit_dom_named_node_map_get_named_item_ns _obj' namespaceURI' localName'
+    checkUnexpectedReturnNULL "webkit_dom_named_node_map_get_named_item_ns" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    freeMem namespaceURI'
+    freeMem localName'
+    return result'
+
+-- method DOMNamedNodeMap::item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_named_node_map_item" webkit_dom_named_node_map_item :: 
+    Ptr DOMNamedNodeMap ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNamedNodeMap"
+    Word64 ->                               -- index : TBasicType TUInt64
+    IO (Ptr DOMNode)
+
+
+dOMNamedNodeMapItem ::
+    (MonadIO m, DOMNamedNodeMapK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- index
+    m DOMNode
+dOMNamedNodeMapItem _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_named_node_map_item _obj' index
+    checkUnexpectedReturnNULL "webkit_dom_named_node_map_item" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNamedNodeMap::remove_named_item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_named_node_map_remove_named_item" webkit_dom_named_node_map_remove_named_item :: 
+    Ptr DOMNamedNodeMap ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNamedNodeMap"
+    CString ->                              -- name : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMNamedNodeMapRemoveNamedItem ::
+    (MonadIO m, DOMNamedNodeMapK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- name
+    m DOMNode
+dOMNamedNodeMapRemoveNamedItem _obj name = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    name' <- textToCString name
+    onException (do
+        result <- propagateGError $ webkit_dom_named_node_map_remove_named_item _obj' name'
+        checkUnexpectedReturnNULL "webkit_dom_named_node_map_remove_named_item" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        freeMem name'
+        return result'
+     ) (do
+        freeMem name'
+     )
+
+-- method DOMNamedNodeMap::remove_named_item_ns
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "localName", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_named_node_map_remove_named_item_ns" webkit_dom_named_node_map_remove_named_item_ns :: 
+    Ptr DOMNamedNodeMap ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNamedNodeMap"
+    CString ->                              -- namespaceURI : TBasicType TUTF8
+    CString ->                              -- localName : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMNamedNodeMapRemoveNamedItemNs ::
+    (MonadIO m, DOMNamedNodeMapK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- namespaceURI
+    T.Text ->                               -- localName
+    m DOMNode
+dOMNamedNodeMapRemoveNamedItemNs _obj namespaceURI localName = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    namespaceURI' <- textToCString namespaceURI
+    localName' <- textToCString localName
+    onException (do
+        result <- propagateGError $ webkit_dom_named_node_map_remove_named_item_ns _obj' namespaceURI' localName'
+        checkUnexpectedReturnNULL "webkit_dom_named_node_map_remove_named_item_ns" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        freeMem namespaceURI'
+        freeMem localName'
+        return result'
+     ) (do
+        freeMem namespaceURI'
+        freeMem localName'
+     )
+
+-- method DOMNamedNodeMap::set_named_item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "node", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "node", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_named_node_map_set_named_item" webkit_dom_named_node_map_set_named_item :: 
+    Ptr DOMNamedNodeMap ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNamedNodeMap"
+    Ptr DOMNode ->                          -- node : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMNamedNodeMapSetNamedItem ::
+    (MonadIO m, DOMNamedNodeMapK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- node
+    m DOMNode
+dOMNamedNodeMapSetNamedItem _obj node = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let node' = unsafeManagedPtrCastPtr node
+    onException (do
+        result <- propagateGError $ webkit_dom_named_node_map_set_named_item _obj' node'
+        checkUnexpectedReturnNULL "webkit_dom_named_node_map_set_named_item" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        touchManagedPtr node
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMNamedNodeMap::set_named_item_ns
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "node", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNamedNodeMap", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "node", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_named_node_map_set_named_item_ns" webkit_dom_named_node_map_set_named_item_ns :: 
+    Ptr DOMNamedNodeMap ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNamedNodeMap"
+    Ptr DOMNode ->                          -- node : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMNamedNodeMapSetNamedItemNs ::
+    (MonadIO m, DOMNamedNodeMapK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- node
+    m DOMNode
+dOMNamedNodeMapSetNamedItemNs _obj node = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let node' = unsafeManagedPtrCastPtr node
+    onException (do
+        result <- propagateGError $ webkit_dom_named_node_map_set_named_item_ns _obj' node'
+        checkUnexpectedReturnNULL "webkit_dom_named_node_map_set_named_item_ns" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        touchManagedPtr node
+        return result'
+     ) (do
+        return ()
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMNamedNodeMap.hs-boot b/GI/WebKit2WebExtension/Objects/DOMNamedNodeMap.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMNamedNodeMap.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMNamedNodeMap where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMNamedNodeMap = DOMNamedNodeMap (ForeignPtr DOMNamedNodeMap)
+instance GObject DOMNamedNodeMap where
+class GObject o => DOMNamedNodeMapK o
+instance (GObject o, IsDescendantOf DOMNamedNodeMap o) => DOMNamedNodeMapK o
+data DOMNamedNodeMapLengthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMNode.hs b/GI/WebKit2WebExtension/Objects/DOMNode.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMNode.hs
@@ -0,0 +1,1581 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMNode
+    ( 
+
+-- * Exported types
+    DOMNode(..)                             ,
+    DOMNodeK                                ,
+    toDOMNode                               ,
+    noDOMNode                               ,
+
+
+ -- * Methods
+-- ** dOMNodeAppendChild
+    dOMNodeAppendChild                      ,
+
+
+-- ** dOMNodeCloneNode
+    dOMNodeCloneNode                        ,
+
+
+-- ** dOMNodeCompareDocumentPosition
+    dOMNodeCompareDocumentPosition          ,
+
+
+-- ** dOMNodeContains
+    dOMNodeContains                         ,
+
+
+-- ** dOMNodeGetBaseUri
+    dOMNodeGetBaseUri                       ,
+
+
+-- ** dOMNodeGetChildNodes
+    dOMNodeGetChildNodes                    ,
+
+
+-- ** dOMNodeGetFirstChild
+    dOMNodeGetFirstChild                    ,
+
+
+-- ** dOMNodeGetLastChild
+    dOMNodeGetLastChild                     ,
+
+
+-- ** dOMNodeGetLocalName
+    dOMNodeGetLocalName                     ,
+
+
+-- ** dOMNodeGetNamespaceUri
+    dOMNodeGetNamespaceUri                  ,
+
+
+-- ** dOMNodeGetNextSibling
+    dOMNodeGetNextSibling                   ,
+
+
+-- ** dOMNodeGetNodeName
+    dOMNodeGetNodeName                      ,
+
+
+-- ** dOMNodeGetNodeType
+    dOMNodeGetNodeType                      ,
+
+
+-- ** dOMNodeGetNodeValue
+    dOMNodeGetNodeValue                     ,
+
+
+-- ** dOMNodeGetOwnerDocument
+    dOMNodeGetOwnerDocument                 ,
+
+
+-- ** dOMNodeGetParentElement
+    dOMNodeGetParentElement                 ,
+
+
+-- ** dOMNodeGetParentNode
+    dOMNodeGetParentNode                    ,
+
+
+-- ** dOMNodeGetPrefix
+    dOMNodeGetPrefix                        ,
+
+
+-- ** dOMNodeGetPreviousSibling
+    dOMNodeGetPreviousSibling               ,
+
+
+-- ** dOMNodeGetTextContent
+    dOMNodeGetTextContent                   ,
+
+
+-- ** dOMNodeHasChildNodes
+    dOMNodeHasChildNodes                    ,
+
+
+-- ** dOMNodeInsertBefore
+    dOMNodeInsertBefore                     ,
+
+
+-- ** dOMNodeIsDefaultNamespace
+    dOMNodeIsDefaultNamespace               ,
+
+
+-- ** dOMNodeIsEqualNode
+    dOMNodeIsEqualNode                      ,
+
+
+-- ** dOMNodeIsSameNode
+    dOMNodeIsSameNode                       ,
+
+
+-- ** dOMNodeIsSupported
+    dOMNodeIsSupported                      ,
+
+
+-- ** dOMNodeLookupNamespaceUri
+    dOMNodeLookupNamespaceUri               ,
+
+
+-- ** dOMNodeLookupPrefix
+    dOMNodeLookupPrefix                     ,
+
+
+-- ** dOMNodeNormalize
+    dOMNodeNormalize                        ,
+
+
+-- ** dOMNodeRemoveChild
+    dOMNodeRemoveChild                      ,
+
+
+-- ** dOMNodeReplaceChild
+    dOMNodeReplaceChild                     ,
+
+
+-- ** dOMNodeSetNodeValue
+    dOMNodeSetNodeValue                     ,
+
+
+-- ** dOMNodeSetPrefix
+    dOMNodeSetPrefix                        ,
+
+
+-- ** dOMNodeSetTextContent
+    dOMNodeSetTextContent                   ,
+
+
+
+
+ -- * Properties
+-- ** BaseUri
+    DOMNodeBaseUriPropertyInfo              ,
+    getDOMNodeBaseUri                       ,
+
+
+-- ** ChildNodes
+    DOMNodeChildNodesPropertyInfo           ,
+    getDOMNodeChildNodes                    ,
+
+
+-- ** FirstChild
+    DOMNodeFirstChildPropertyInfo           ,
+    getDOMNodeFirstChild                    ,
+
+
+-- ** LastChild
+    DOMNodeLastChildPropertyInfo            ,
+    getDOMNodeLastChild                     ,
+
+
+-- ** LocalName
+    DOMNodeLocalNamePropertyInfo            ,
+    getDOMNodeLocalName                     ,
+
+
+-- ** NamespaceUri
+    DOMNodeNamespaceUriPropertyInfo         ,
+    getDOMNodeNamespaceUri                  ,
+
+
+-- ** NextSibling
+    DOMNodeNextSiblingPropertyInfo          ,
+    getDOMNodeNextSibling                   ,
+
+
+-- ** NodeName
+    DOMNodeNodeNamePropertyInfo             ,
+    getDOMNodeNodeName                      ,
+
+
+-- ** NodeType
+    DOMNodeNodeTypePropertyInfo             ,
+    getDOMNodeNodeType                      ,
+
+
+-- ** NodeValue
+    DOMNodeNodeValuePropertyInfo            ,
+    constructDOMNodeNodeValue               ,
+    getDOMNodeNodeValue                     ,
+    setDOMNodeNodeValue                     ,
+
+
+-- ** OwnerDocument
+    DOMNodeOwnerDocumentPropertyInfo        ,
+    getDOMNodeOwnerDocument                 ,
+
+
+-- ** ParentElement
+    DOMNodeParentElementPropertyInfo        ,
+    getDOMNodeParentElement                 ,
+
+
+-- ** ParentNode
+    DOMNodeParentNodePropertyInfo           ,
+    getDOMNodeParentNode                    ,
+
+
+-- ** Prefix
+    DOMNodePrefixPropertyInfo               ,
+    constructDOMNodePrefix                  ,
+    getDOMNodePrefix                        ,
+    setDOMNodePrefix                        ,
+
+
+-- ** PreviousSibling
+    DOMNodePreviousSiblingPropertyInfo      ,
+    getDOMNodePreviousSibling               ,
+
+
+-- ** TextContent
+    DOMNodeTextContentPropertyInfo          ,
+    constructDOMNodeTextContent             ,
+    getDOMNodeTextContent                   ,
+    setDOMNodeTextContent                   ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMNode = DOMNode (ForeignPtr DOMNode)
+foreign import ccall "webkit_dom_node_get_type"
+    c_webkit_dom_node_get_type :: IO GType
+
+type instance ParentTypes DOMNode = DOMNodeParentTypes
+type DOMNodeParentTypes = '[DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMNode where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_node_get_type
+    
+
+class GObject o => DOMNodeK o
+instance (GObject o, IsDescendantOf DOMNode o) => DOMNodeK o
+
+toDOMNode :: DOMNodeK o => o -> IO DOMNode
+toDOMNode = unsafeCastTo DOMNode
+
+noDOMNode :: Maybe DOMNode
+noDOMNode = Nothing
+
+-- VVV Prop "base-uri"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMNodeBaseUri :: (MonadIO m, DOMNodeK o) => o -> m T.Text
+getDOMNodeBaseUri obj = liftIO $ getObjectPropertyString obj "base-uri"
+
+data DOMNodeBaseUriPropertyInfo
+instance AttrInfo DOMNodeBaseUriPropertyInfo where
+    type AttrAllowedOps DOMNodeBaseUriPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeBaseUriPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeBaseUriPropertyInfo = DOMNodeK
+    type AttrGetType DOMNodeBaseUriPropertyInfo = T.Text
+    type AttrLabel DOMNodeBaseUriPropertyInfo = "DOMNode::base-uri"
+    attrGet _ = getDOMNodeBaseUri
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "child-nodes"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNodeList"
+   -- Flags: [PropertyReadable]
+
+getDOMNodeChildNodes :: (MonadIO m, DOMNodeK o) => o -> m DOMNodeList
+getDOMNodeChildNodes obj = liftIO $ getObjectPropertyObject obj "child-nodes" DOMNodeList
+
+data DOMNodeChildNodesPropertyInfo
+instance AttrInfo DOMNodeChildNodesPropertyInfo where
+    type AttrAllowedOps DOMNodeChildNodesPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeChildNodesPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeChildNodesPropertyInfo = DOMNodeK
+    type AttrGetType DOMNodeChildNodesPropertyInfo = DOMNodeList
+    type AttrLabel DOMNodeChildNodesPropertyInfo = "DOMNode::child-nodes"
+    attrGet _ = getDOMNodeChildNodes
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "first-child"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMNodeFirstChild :: (MonadIO m, DOMNodeK o) => o -> m DOMNode
+getDOMNodeFirstChild obj = liftIO $ getObjectPropertyObject obj "first-child" DOMNode
+
+data DOMNodeFirstChildPropertyInfo
+instance AttrInfo DOMNodeFirstChildPropertyInfo where
+    type AttrAllowedOps DOMNodeFirstChildPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeFirstChildPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeFirstChildPropertyInfo = DOMNodeK
+    type AttrGetType DOMNodeFirstChildPropertyInfo = DOMNode
+    type AttrLabel DOMNodeFirstChildPropertyInfo = "DOMNode::first-child"
+    attrGet _ = getDOMNodeFirstChild
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "last-child"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMNodeLastChild :: (MonadIO m, DOMNodeK o) => o -> m DOMNode
+getDOMNodeLastChild obj = liftIO $ getObjectPropertyObject obj "last-child" DOMNode
+
+data DOMNodeLastChildPropertyInfo
+instance AttrInfo DOMNodeLastChildPropertyInfo where
+    type AttrAllowedOps DOMNodeLastChildPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeLastChildPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeLastChildPropertyInfo = DOMNodeK
+    type AttrGetType DOMNodeLastChildPropertyInfo = DOMNode
+    type AttrLabel DOMNodeLastChildPropertyInfo = "DOMNode::last-child"
+    attrGet _ = getDOMNodeLastChild
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "local-name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMNodeLocalName :: (MonadIO m, DOMNodeK o) => o -> m T.Text
+getDOMNodeLocalName obj = liftIO $ getObjectPropertyString obj "local-name"
+
+data DOMNodeLocalNamePropertyInfo
+instance AttrInfo DOMNodeLocalNamePropertyInfo where
+    type AttrAllowedOps DOMNodeLocalNamePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeLocalNamePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeLocalNamePropertyInfo = DOMNodeK
+    type AttrGetType DOMNodeLocalNamePropertyInfo = T.Text
+    type AttrLabel DOMNodeLocalNamePropertyInfo = "DOMNode::local-name"
+    attrGet _ = getDOMNodeLocalName
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "namespace-uri"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMNodeNamespaceUri :: (MonadIO m, DOMNodeK o) => o -> m T.Text
+getDOMNodeNamespaceUri obj = liftIO $ getObjectPropertyString obj "namespace-uri"
+
+data DOMNodeNamespaceUriPropertyInfo
+instance AttrInfo DOMNodeNamespaceUriPropertyInfo where
+    type AttrAllowedOps DOMNodeNamespaceUriPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeNamespaceUriPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeNamespaceUriPropertyInfo = DOMNodeK
+    type AttrGetType DOMNodeNamespaceUriPropertyInfo = T.Text
+    type AttrLabel DOMNodeNamespaceUriPropertyInfo = "DOMNode::namespace-uri"
+    attrGet _ = getDOMNodeNamespaceUri
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "next-sibling"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMNodeNextSibling :: (MonadIO m, DOMNodeK o) => o -> m DOMNode
+getDOMNodeNextSibling obj = liftIO $ getObjectPropertyObject obj "next-sibling" DOMNode
+
+data DOMNodeNextSiblingPropertyInfo
+instance AttrInfo DOMNodeNextSiblingPropertyInfo where
+    type AttrAllowedOps DOMNodeNextSiblingPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeNextSiblingPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeNextSiblingPropertyInfo = DOMNodeK
+    type AttrGetType DOMNodeNextSiblingPropertyInfo = DOMNode
+    type AttrLabel DOMNodeNextSiblingPropertyInfo = "DOMNode::next-sibling"
+    attrGet _ = getDOMNodeNextSibling
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "node-name"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMNodeNodeName :: (MonadIO m, DOMNodeK o) => o -> m T.Text
+getDOMNodeNodeName obj = liftIO $ getObjectPropertyString obj "node-name"
+
+data DOMNodeNodeNamePropertyInfo
+instance AttrInfo DOMNodeNodeNamePropertyInfo where
+    type AttrAllowedOps DOMNodeNodeNamePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeNodeNamePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeNodeNamePropertyInfo = DOMNodeK
+    type AttrGetType DOMNodeNodeNamePropertyInfo = T.Text
+    type AttrLabel DOMNodeNodeNamePropertyInfo = "DOMNode::node-name"
+    attrGet _ = getDOMNodeNodeName
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "node-type"
+   -- Type: TBasicType TUInt32
+   -- Flags: [PropertyReadable]
+
+getDOMNodeNodeType :: (MonadIO m, DOMNodeK o) => o -> m Word32
+getDOMNodeNodeType obj = liftIO $ getObjectPropertyCUInt obj "node-type"
+
+data DOMNodeNodeTypePropertyInfo
+instance AttrInfo DOMNodeNodeTypePropertyInfo where
+    type AttrAllowedOps DOMNodeNodeTypePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeNodeTypePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeNodeTypePropertyInfo = DOMNodeK
+    type AttrGetType DOMNodeNodeTypePropertyInfo = Word32
+    type AttrLabel DOMNodeNodeTypePropertyInfo = "DOMNode::node-type"
+    attrGet _ = getDOMNodeNodeType
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "node-value"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMNodeNodeValue :: (MonadIO m, DOMNodeK o) => o -> m T.Text
+getDOMNodeNodeValue obj = liftIO $ getObjectPropertyString obj "node-value"
+
+setDOMNodeNodeValue :: (MonadIO m, DOMNodeK o) => o -> T.Text -> m ()
+setDOMNodeNodeValue obj val = liftIO $ setObjectPropertyString obj "node-value" val
+
+constructDOMNodeNodeValue :: T.Text -> IO ([Char], GValue)
+constructDOMNodeNodeValue val = constructObjectPropertyString "node-value" val
+
+data DOMNodeNodeValuePropertyInfo
+instance AttrInfo DOMNodeNodeValuePropertyInfo where
+    type AttrAllowedOps DOMNodeNodeValuePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeNodeValuePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMNodeNodeValuePropertyInfo = DOMNodeK
+    type AttrGetType DOMNodeNodeValuePropertyInfo = T.Text
+    type AttrLabel DOMNodeNodeValuePropertyInfo = "DOMNode::node-value"
+    attrGet _ = getDOMNodeNodeValue
+    attrSet _ = setDOMNodeNodeValue
+    attrConstruct _ = constructDOMNodeNodeValue
+
+-- VVV Prop "owner-document"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDocument"
+   -- Flags: [PropertyReadable]
+
+getDOMNodeOwnerDocument :: (MonadIO m, DOMNodeK o) => o -> m DOMDocument
+getDOMNodeOwnerDocument obj = liftIO $ getObjectPropertyObject obj "owner-document" DOMDocument
+
+data DOMNodeOwnerDocumentPropertyInfo
+instance AttrInfo DOMNodeOwnerDocumentPropertyInfo where
+    type AttrAllowedOps DOMNodeOwnerDocumentPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeOwnerDocumentPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeOwnerDocumentPropertyInfo = DOMNodeK
+    type AttrGetType DOMNodeOwnerDocumentPropertyInfo = DOMDocument
+    type AttrLabel DOMNodeOwnerDocumentPropertyInfo = "DOMNode::owner-document"
+    attrGet _ = getDOMNodeOwnerDocument
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "parent-element"
+   -- Type: TInterface "WebKit2WebExtension" "DOMElement"
+   -- Flags: [PropertyReadable]
+
+getDOMNodeParentElement :: (MonadIO m, DOMNodeK o) => o -> m DOMElement
+getDOMNodeParentElement obj = liftIO $ getObjectPropertyObject obj "parent-element" DOMElement
+
+data DOMNodeParentElementPropertyInfo
+instance AttrInfo DOMNodeParentElementPropertyInfo where
+    type AttrAllowedOps DOMNodeParentElementPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeParentElementPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeParentElementPropertyInfo = DOMNodeK
+    type AttrGetType DOMNodeParentElementPropertyInfo = DOMElement
+    type AttrLabel DOMNodeParentElementPropertyInfo = "DOMNode::parent-element"
+    attrGet _ = getDOMNodeParentElement
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "parent-node"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMNodeParentNode :: (MonadIO m, DOMNodeK o) => o -> m DOMNode
+getDOMNodeParentNode obj = liftIO $ getObjectPropertyObject obj "parent-node" DOMNode
+
+data DOMNodeParentNodePropertyInfo
+instance AttrInfo DOMNodeParentNodePropertyInfo where
+    type AttrAllowedOps DOMNodeParentNodePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeParentNodePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeParentNodePropertyInfo = DOMNodeK
+    type AttrGetType DOMNodeParentNodePropertyInfo = DOMNode
+    type AttrLabel DOMNodeParentNodePropertyInfo = "DOMNode::parent-node"
+    attrGet _ = getDOMNodeParentNode
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "prefix"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMNodePrefix :: (MonadIO m, DOMNodeK o) => o -> m T.Text
+getDOMNodePrefix obj = liftIO $ getObjectPropertyString obj "prefix"
+
+setDOMNodePrefix :: (MonadIO m, DOMNodeK o) => o -> T.Text -> m ()
+setDOMNodePrefix obj val = liftIO $ setObjectPropertyString obj "prefix" val
+
+constructDOMNodePrefix :: T.Text -> IO ([Char], GValue)
+constructDOMNodePrefix val = constructObjectPropertyString "prefix" val
+
+data DOMNodePrefixPropertyInfo
+instance AttrInfo DOMNodePrefixPropertyInfo where
+    type AttrAllowedOps DOMNodePrefixPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMNodePrefixPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMNodePrefixPropertyInfo = DOMNodeK
+    type AttrGetType DOMNodePrefixPropertyInfo = T.Text
+    type AttrLabel DOMNodePrefixPropertyInfo = "DOMNode::prefix"
+    attrGet _ = getDOMNodePrefix
+    attrSet _ = setDOMNodePrefix
+    attrConstruct _ = constructDOMNodePrefix
+
+-- VVV Prop "previous-sibling"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMNodePreviousSibling :: (MonadIO m, DOMNodeK o) => o -> m DOMNode
+getDOMNodePreviousSibling obj = liftIO $ getObjectPropertyObject obj "previous-sibling" DOMNode
+
+data DOMNodePreviousSiblingPropertyInfo
+instance AttrInfo DOMNodePreviousSiblingPropertyInfo where
+    type AttrAllowedOps DOMNodePreviousSiblingPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodePreviousSiblingPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodePreviousSiblingPropertyInfo = DOMNodeK
+    type AttrGetType DOMNodePreviousSiblingPropertyInfo = DOMNode
+    type AttrLabel DOMNodePreviousSiblingPropertyInfo = "DOMNode::previous-sibling"
+    attrGet _ = getDOMNodePreviousSibling
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "text-content"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMNodeTextContent :: (MonadIO m, DOMNodeK o) => o -> m T.Text
+getDOMNodeTextContent obj = liftIO $ getObjectPropertyString obj "text-content"
+
+setDOMNodeTextContent :: (MonadIO m, DOMNodeK o) => o -> T.Text -> m ()
+setDOMNodeTextContent obj val = liftIO $ setObjectPropertyString obj "text-content" val
+
+constructDOMNodeTextContent :: T.Text -> IO ([Char], GValue)
+constructDOMNodeTextContent val = constructObjectPropertyString "text-content" val
+
+data DOMNodeTextContentPropertyInfo
+instance AttrInfo DOMNodeTextContentPropertyInfo where
+    type AttrAllowedOps DOMNodeTextContentPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeTextContentPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint DOMNodeTextContentPropertyInfo = DOMNodeK
+    type AttrGetType DOMNodeTextContentPropertyInfo = T.Text
+    type AttrLabel DOMNodeTextContentPropertyInfo = "DOMNode::text-content"
+    attrGet _ = getDOMNodeTextContent
+    attrSet _ = setDOMNodeTextContent
+    attrConstruct _ = constructDOMNodeTextContent
+
+type instance AttributeList DOMNode = DOMNodeAttributeList
+type DOMNodeAttributeList = ('[ '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMNode = DOMNodeSignalList
+type DOMNodeSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMNode::append_child
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newChild", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newChild", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_append_child" webkit_dom_node_append_child :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr DOMNode ->                          -- newChild : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMNodeAppendChild ::
+    (MonadIO m, DOMNodeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- newChild
+    m DOMNode
+dOMNodeAppendChild _obj newChild = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let newChild' = unsafeManagedPtrCastPtr newChild
+    onException (do
+        result <- propagateGError $ webkit_dom_node_append_child _obj' newChild'
+        checkUnexpectedReturnNULL "webkit_dom_node_append_child" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        touchManagedPtr newChild
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMNode::clone_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "deep", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "deep", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_clone_node" webkit_dom_node_clone_node :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    CInt ->                                 -- deep : TBasicType TBoolean
+    IO (Ptr DOMNode)
+
+
+dOMNodeCloneNode ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- deep
+    m DOMNode
+dOMNodeCloneNode _obj deep = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let deep' = (fromIntegral . fromEnum) deep
+    result <- webkit_dom_node_clone_node _obj' deep'
+    checkUnexpectedReturnNULL "webkit_dom_node_clone_node" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::compare_document_position
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "other", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "other", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt16
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_compare_document_position" webkit_dom_node_compare_document_position :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr DOMNode ->                          -- other : TInterface "WebKit2WebExtension" "DOMNode"
+    IO Word16
+
+
+dOMNodeCompareDocumentPosition ::
+    (MonadIO m, DOMNodeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- other
+    m Word16
+dOMNodeCompareDocumentPosition _obj other = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let other' = unsafeManagedPtrCastPtr other
+    result <- webkit_dom_node_compare_document_position _obj' other'
+    touchManagedPtr _obj
+    touchManagedPtr other
+    return result
+
+-- method DOMNode::contains
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "other", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "other", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_contains" webkit_dom_node_contains :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr DOMNode ->                          -- other : TInterface "WebKit2WebExtension" "DOMNode"
+    IO CInt
+
+
+dOMNodeContains ::
+    (MonadIO m, DOMNodeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- other
+    m Bool
+dOMNodeContains _obj other = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let other' = unsafeManagedPtrCastPtr other
+    result <- webkit_dom_node_contains _obj' other'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    touchManagedPtr other
+    return result'
+
+-- method DOMNode::get_base_uri
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_base_uri" webkit_dom_node_get_base_uri :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO CString
+
+
+dOMNodeGetBaseUri ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMNodeGetBaseUri _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_base_uri _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_get_base_uri" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::get_child_nodes
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNodeList"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_child_nodes" webkit_dom_node_get_child_nodes :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO (Ptr DOMNodeList)
+
+
+dOMNodeGetChildNodes ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m DOMNodeList
+dOMNodeGetChildNodes _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_child_nodes _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_get_child_nodes" result
+    result' <- (wrapObject DOMNodeList) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::get_first_child
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_first_child" webkit_dom_node_get_first_child :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO (Ptr DOMNode)
+
+
+dOMNodeGetFirstChild ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMNodeGetFirstChild _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_first_child _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_get_first_child" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::get_last_child
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_last_child" webkit_dom_node_get_last_child :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO (Ptr DOMNode)
+
+
+dOMNodeGetLastChild ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMNodeGetLastChild _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_last_child _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_get_last_child" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::get_local_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_local_name" webkit_dom_node_get_local_name :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO CString
+
+
+dOMNodeGetLocalName ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMNodeGetLocalName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_local_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_get_local_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::get_namespace_uri
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_namespace_uri" webkit_dom_node_get_namespace_uri :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO CString
+
+
+dOMNodeGetNamespaceUri ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMNodeGetNamespaceUri _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_namespace_uri _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_get_namespace_uri" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::get_next_sibling
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_next_sibling" webkit_dom_node_get_next_sibling :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO (Ptr DOMNode)
+
+
+dOMNodeGetNextSibling ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMNodeGetNextSibling _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_next_sibling _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_get_next_sibling" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::get_node_name
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_node_name" webkit_dom_node_get_node_name :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO CString
+
+
+dOMNodeGetNodeName ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMNodeGetNodeName _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_node_name _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_get_node_name" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::get_node_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt16
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_node_type" webkit_dom_node_get_node_type :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO Word16
+
+
+dOMNodeGetNodeType ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m Word16
+dOMNodeGetNodeType _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_node_type _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMNode::get_node_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_node_value" webkit_dom_node_get_node_value :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO CString
+
+
+dOMNodeGetNodeValue ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMNodeGetNodeValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_node_value _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_get_node_value" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::get_owner_document
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDocument"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_owner_document" webkit_dom_node_get_owner_document :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO (Ptr DOMDocument)
+
+
+dOMNodeGetOwnerDocument ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m DOMDocument
+dOMNodeGetOwnerDocument _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_owner_document _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_get_owner_document" result
+    result' <- (newObject DOMDocument) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::get_parent_element
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMElement"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_parent_element" webkit_dom_node_get_parent_element :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO (Ptr DOMElement)
+
+
+dOMNodeGetParentElement ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m DOMElement
+dOMNodeGetParentElement _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_parent_element _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_get_parent_element" result
+    result' <- (newObject DOMElement) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::get_parent_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_parent_node" webkit_dom_node_get_parent_node :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO (Ptr DOMNode)
+
+
+dOMNodeGetParentNode ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMNodeGetParentNode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_parent_node _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_get_parent_node" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::get_prefix
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_prefix" webkit_dom_node_get_prefix :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO CString
+
+
+dOMNodeGetPrefix ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMNodeGetPrefix _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_prefix _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_get_prefix" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::get_previous_sibling
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_previous_sibling" webkit_dom_node_get_previous_sibling :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO (Ptr DOMNode)
+
+
+dOMNodeGetPreviousSibling ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMNodeGetPreviousSibling _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_previous_sibling _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_get_previous_sibling" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::get_text_content
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_get_text_content" webkit_dom_node_get_text_content :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO CString
+
+
+dOMNodeGetTextContent ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMNodeGetTextContent _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_get_text_content _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_get_text_content" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::has_child_nodes
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_has_child_nodes" webkit_dom_node_has_child_nodes :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO CInt
+
+
+dOMNodeHasChildNodes ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMNodeHasChildNodes _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_has_child_nodes _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNode::insert_before
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newChild", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refChild", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newChild", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refChild", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = True, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_insert_before" webkit_dom_node_insert_before :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr DOMNode ->                          -- newChild : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr DOMNode ->                          -- refChild : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMNodeInsertBefore ::
+    (MonadIO m, DOMNodeK a, DOMNodeK b, DOMNodeK c) =>
+    a ->                                    -- _obj
+    b ->                                    -- newChild
+    Maybe (c) ->                            -- refChild
+    m DOMNode
+dOMNodeInsertBefore _obj newChild refChild = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let newChild' = unsafeManagedPtrCastPtr newChild
+    maybeRefChild <- case refChild of
+        Nothing -> return nullPtr
+        Just jRefChild -> do
+            let jRefChild' = unsafeManagedPtrCastPtr jRefChild
+            return jRefChild'
+    onException (do
+        result <- propagateGError $ webkit_dom_node_insert_before _obj' newChild' maybeRefChild
+        checkUnexpectedReturnNULL "webkit_dom_node_insert_before" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        touchManagedPtr newChild
+        whenJust refChild touchManagedPtr
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMNode::is_default_namespace
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_is_default_namespace" webkit_dom_node_is_default_namespace :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    CString ->                              -- namespaceURI : TBasicType TUTF8
+    IO CInt
+
+
+dOMNodeIsDefaultNamespace ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- namespaceURI
+    m Bool
+dOMNodeIsDefaultNamespace _obj namespaceURI = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    namespaceURI' <- textToCString namespaceURI
+    result <- webkit_dom_node_is_default_namespace _obj' namespaceURI'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    freeMem namespaceURI'
+    return result'
+
+-- method DOMNode::is_equal_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "other", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "other", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_is_equal_node" webkit_dom_node_is_equal_node :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr DOMNode ->                          -- other : TInterface "WebKit2WebExtension" "DOMNode"
+    IO CInt
+
+
+dOMNodeIsEqualNode ::
+    (MonadIO m, DOMNodeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- other
+    m Bool
+dOMNodeIsEqualNode _obj other = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let other' = unsafeManagedPtrCastPtr other
+    result <- webkit_dom_node_is_equal_node _obj' other'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    touchManagedPtr other
+    return result'
+
+-- method DOMNode::is_same_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "other", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "other", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_is_same_node" webkit_dom_node_is_same_node :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr DOMNode ->                          -- other : TInterface "WebKit2WebExtension" "DOMNode"
+    IO CInt
+
+
+dOMNodeIsSameNode ::
+    (MonadIO m, DOMNodeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- other
+    m Bool
+dOMNodeIsSameNode _obj other = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let other' = unsafeManagedPtrCastPtr other
+    result <- webkit_dom_node_is_same_node _obj' other'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    touchManagedPtr other
+    return result'
+
+-- method DOMNode::is_supported
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "feature", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "version", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "feature", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "version", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_is_supported" webkit_dom_node_is_supported :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    CString ->                              -- feature : TBasicType TUTF8
+    CString ->                              -- version : TBasicType TUTF8
+    IO CInt
+
+
+dOMNodeIsSupported ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- feature
+    T.Text ->                               -- version
+    m Bool
+dOMNodeIsSupported _obj feature version = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    feature' <- textToCString feature
+    version' <- textToCString version
+    result <- webkit_dom_node_is_supported _obj' feature' version'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    freeMem feature'
+    freeMem version'
+    return result'
+
+-- method DOMNode::lookup_namespace_uri
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "prefix", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "prefix", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_lookup_namespace_uri" webkit_dom_node_lookup_namespace_uri :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    CString ->                              -- prefix : TBasicType TUTF8
+    IO CString
+
+
+dOMNodeLookupNamespaceUri ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- prefix
+    m T.Text
+dOMNodeLookupNamespaceUri _obj prefix = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    prefix' <- textToCString prefix
+    result <- webkit_dom_node_lookup_namespace_uri _obj' prefix'
+    checkUnexpectedReturnNULL "webkit_dom_node_lookup_namespace_uri" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    freeMem prefix'
+    return result'
+
+-- method DOMNode::lookup_prefix
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "namespaceURI", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_lookup_prefix" webkit_dom_node_lookup_prefix :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    CString ->                              -- namespaceURI : TBasicType TUTF8
+    IO CString
+
+
+dOMNodeLookupPrefix ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- namespaceURI
+    m T.Text
+dOMNodeLookupPrefix _obj namespaceURI = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    namespaceURI' <- textToCString namespaceURI
+    result <- webkit_dom_node_lookup_prefix _obj' namespaceURI'
+    checkUnexpectedReturnNULL "webkit_dom_node_lookup_prefix" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    freeMem namespaceURI'
+    return result'
+
+-- method DOMNode::normalize
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_normalize" webkit_dom_node_normalize :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    IO ()
+
+
+dOMNodeNormalize ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMNodeNormalize _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_node_normalize _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMNode::remove_child
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "oldChild", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "oldChild", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_remove_child" webkit_dom_node_remove_child :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr DOMNode ->                          -- oldChild : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMNodeRemoveChild ::
+    (MonadIO m, DOMNodeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- oldChild
+    m DOMNode
+dOMNodeRemoveChild _obj oldChild = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let oldChild' = unsafeManagedPtrCastPtr oldChild
+    onException (do
+        result <- propagateGError $ webkit_dom_node_remove_child _obj' oldChild'
+        checkUnexpectedReturnNULL "webkit_dom_node_remove_child" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        touchManagedPtr oldChild
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMNode::replace_child
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newChild", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "oldChild", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newChild", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "oldChild", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_replace_child" webkit_dom_node_replace_child :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr DOMNode ->                          -- newChild : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr DOMNode ->                          -- oldChild : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMNodeReplaceChild ::
+    (MonadIO m, DOMNodeK a, DOMNodeK b, DOMNodeK c) =>
+    a ->                                    -- _obj
+    b ->                                    -- newChild
+    c ->                                    -- oldChild
+    m DOMNode
+dOMNodeReplaceChild _obj newChild oldChild = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let newChild' = unsafeManagedPtrCastPtr newChild
+    let oldChild' = unsafeManagedPtrCastPtr oldChild
+    onException (do
+        result <- propagateGError $ webkit_dom_node_replace_child _obj' newChild' oldChild'
+        checkUnexpectedReturnNULL "webkit_dom_node_replace_child" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        touchManagedPtr newChild
+        touchManagedPtr oldChild
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMNode::set_node_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_set_node_value" webkit_dom_node_set_node_value :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMNodeSetNodeValue ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMNodeSetNodeValue _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_node_set_node_value _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+-- method DOMNode::set_prefix
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_set_prefix" webkit_dom_node_set_prefix :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMNodeSetPrefix ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMNodeSetPrefix _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_node_set_prefix _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+-- method DOMNode::set_text_content
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_set_text_content" webkit_dom_node_set_text_content :: 
+    Ptr DOMNode ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMNode"
+    CString ->                              -- value : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMNodeSetTextContent ::
+    (MonadIO m, DOMNodeK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- value
+    m ()
+dOMNodeSetTextContent _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    value' <- textToCString value
+    onException (do
+        propagateGError $ webkit_dom_node_set_text_content _obj' value'
+        touchManagedPtr _obj
+        freeMem value'
+        return ()
+     ) (do
+        freeMem value'
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMNode.hs-boot b/GI/WebKit2WebExtension/Objects/DOMNode.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMNode.hs-boot
@@ -0,0 +1,29 @@
+module GI.WebKit2WebExtension.Objects.DOMNode where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMNode = DOMNode (ForeignPtr DOMNode)
+instance GObject DOMNode where
+class GObject o => DOMNodeK o
+instance (GObject o, IsDescendantOf DOMNode o) => DOMNodeK o
+data DOMNodeBaseUriPropertyInfo
+data DOMNodeChildNodesPropertyInfo
+data DOMNodeFirstChildPropertyInfo
+data DOMNodeLastChildPropertyInfo
+data DOMNodeLocalNamePropertyInfo
+data DOMNodeNamespaceUriPropertyInfo
+data DOMNodeNextSiblingPropertyInfo
+data DOMNodeNodeNamePropertyInfo
+data DOMNodeNodeTypePropertyInfo
+data DOMNodeNodeValuePropertyInfo
+data DOMNodeOwnerDocumentPropertyInfo
+data DOMNodeParentElementPropertyInfo
+data DOMNodeParentNodePropertyInfo
+data DOMNodePrefixPropertyInfo
+data DOMNodePreviousSiblingPropertyInfo
+data DOMNodeTextContentPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMNodeIterator.hs b/GI/WebKit2WebExtension/Objects/DOMNodeIterator.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMNodeIterator.hs
@@ -0,0 +1,476 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMNodeIterator
+    ( 
+
+-- * Exported types
+    DOMNodeIterator(..)                     ,
+    DOMNodeIteratorK                        ,
+    toDOMNodeIterator                       ,
+    noDOMNodeIterator                       ,
+
+
+ -- * Methods
+-- ** dOMNodeIteratorDetach
+    dOMNodeIteratorDetach                   ,
+
+
+-- ** dOMNodeIteratorGetExpandEntityReferences
+    dOMNodeIteratorGetExpandEntityReferences,
+
+
+-- ** dOMNodeIteratorGetFilter
+    dOMNodeIteratorGetFilter                ,
+
+
+-- ** dOMNodeIteratorGetPointerBeforeReferenceNode
+    dOMNodeIteratorGetPointerBeforeReferenceNode,
+
+
+-- ** dOMNodeIteratorGetReferenceNode
+    dOMNodeIteratorGetReferenceNode         ,
+
+
+-- ** dOMNodeIteratorGetRoot
+    dOMNodeIteratorGetRoot                  ,
+
+
+-- ** dOMNodeIteratorGetWhatToShow
+    dOMNodeIteratorGetWhatToShow            ,
+
+
+-- ** dOMNodeIteratorNextNode
+    dOMNodeIteratorNextNode                 ,
+
+
+-- ** dOMNodeIteratorPreviousNode
+    dOMNodeIteratorPreviousNode             ,
+
+
+
+
+ -- * Properties
+-- ** ExpandEntityReferences
+    DOMNodeIteratorExpandEntityReferencesPropertyInfo,
+    getDOMNodeIteratorExpandEntityReferences,
+
+
+-- ** Filter
+    DOMNodeIteratorFilterPropertyInfo       ,
+    getDOMNodeIteratorFilter                ,
+
+
+-- ** PointerBeforeReferenceNode
+    DOMNodeIteratorPointerBeforeReferenceNodePropertyInfo,
+    getDOMNodeIteratorPointerBeforeReferenceNode,
+
+
+-- ** ReferenceNode
+    DOMNodeIteratorReferenceNodePropertyInfo,
+    getDOMNodeIteratorReferenceNode         ,
+
+
+-- ** Root
+    DOMNodeIteratorRootPropertyInfo         ,
+    getDOMNodeIteratorRoot                  ,
+
+
+-- ** WhatToShow
+    DOMNodeIteratorWhatToShowPropertyInfo   ,
+    getDOMNodeIteratorWhatToShow            ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMNodeIterator = DOMNodeIterator (ForeignPtr DOMNodeIterator)
+foreign import ccall "webkit_dom_node_iterator_get_type"
+    c_webkit_dom_node_iterator_get_type :: IO GType
+
+type instance ParentTypes DOMNodeIterator = DOMNodeIteratorParentTypes
+type DOMNodeIteratorParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMNodeIterator where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_node_iterator_get_type
+    
+
+class GObject o => DOMNodeIteratorK o
+instance (GObject o, IsDescendantOf DOMNodeIterator o) => DOMNodeIteratorK o
+
+toDOMNodeIterator :: DOMNodeIteratorK o => o -> IO DOMNodeIterator
+toDOMNodeIterator = unsafeCastTo DOMNodeIterator
+
+noDOMNodeIterator :: Maybe DOMNodeIterator
+noDOMNodeIterator = Nothing
+
+-- VVV Prop "expand-entity-references"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMNodeIteratorExpandEntityReferences :: (MonadIO m, DOMNodeIteratorK o) => o -> m Bool
+getDOMNodeIteratorExpandEntityReferences obj = liftIO $ getObjectPropertyBool obj "expand-entity-references"
+
+data DOMNodeIteratorExpandEntityReferencesPropertyInfo
+instance AttrInfo DOMNodeIteratorExpandEntityReferencesPropertyInfo where
+    type AttrAllowedOps DOMNodeIteratorExpandEntityReferencesPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeIteratorExpandEntityReferencesPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeIteratorExpandEntityReferencesPropertyInfo = DOMNodeIteratorK
+    type AttrGetType DOMNodeIteratorExpandEntityReferencesPropertyInfo = Bool
+    type AttrLabel DOMNodeIteratorExpandEntityReferencesPropertyInfo = "DOMNodeIterator::expand-entity-references"
+    attrGet _ = getDOMNodeIteratorExpandEntityReferences
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "filter"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNodeFilter"
+   -- Flags: [PropertyReadable]
+
+getDOMNodeIteratorFilter :: (MonadIO m, DOMNodeIteratorK o) => o -> m DOMNodeFilter
+getDOMNodeIteratorFilter obj = liftIO $ getObjectPropertyObject obj "filter" DOMNodeFilter
+
+data DOMNodeIteratorFilterPropertyInfo
+instance AttrInfo DOMNodeIteratorFilterPropertyInfo where
+    type AttrAllowedOps DOMNodeIteratorFilterPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeIteratorFilterPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeIteratorFilterPropertyInfo = DOMNodeIteratorK
+    type AttrGetType DOMNodeIteratorFilterPropertyInfo = DOMNodeFilter
+    type AttrLabel DOMNodeIteratorFilterPropertyInfo = "DOMNodeIterator::filter"
+    attrGet _ = getDOMNodeIteratorFilter
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "pointer-before-reference-node"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMNodeIteratorPointerBeforeReferenceNode :: (MonadIO m, DOMNodeIteratorK o) => o -> m Bool
+getDOMNodeIteratorPointerBeforeReferenceNode obj = liftIO $ getObjectPropertyBool obj "pointer-before-reference-node"
+
+data DOMNodeIteratorPointerBeforeReferenceNodePropertyInfo
+instance AttrInfo DOMNodeIteratorPointerBeforeReferenceNodePropertyInfo where
+    type AttrAllowedOps DOMNodeIteratorPointerBeforeReferenceNodePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeIteratorPointerBeforeReferenceNodePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeIteratorPointerBeforeReferenceNodePropertyInfo = DOMNodeIteratorK
+    type AttrGetType DOMNodeIteratorPointerBeforeReferenceNodePropertyInfo = Bool
+    type AttrLabel DOMNodeIteratorPointerBeforeReferenceNodePropertyInfo = "DOMNodeIterator::pointer-before-reference-node"
+    attrGet _ = getDOMNodeIteratorPointerBeforeReferenceNode
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "reference-node"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMNodeIteratorReferenceNode :: (MonadIO m, DOMNodeIteratorK o) => o -> m DOMNode
+getDOMNodeIteratorReferenceNode obj = liftIO $ getObjectPropertyObject obj "reference-node" DOMNode
+
+data DOMNodeIteratorReferenceNodePropertyInfo
+instance AttrInfo DOMNodeIteratorReferenceNodePropertyInfo where
+    type AttrAllowedOps DOMNodeIteratorReferenceNodePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeIteratorReferenceNodePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeIteratorReferenceNodePropertyInfo = DOMNodeIteratorK
+    type AttrGetType DOMNodeIteratorReferenceNodePropertyInfo = DOMNode
+    type AttrLabel DOMNodeIteratorReferenceNodePropertyInfo = "DOMNodeIterator::reference-node"
+    attrGet _ = getDOMNodeIteratorReferenceNode
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "root"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMNodeIteratorRoot :: (MonadIO m, DOMNodeIteratorK o) => o -> m DOMNode
+getDOMNodeIteratorRoot obj = liftIO $ getObjectPropertyObject obj "root" DOMNode
+
+data DOMNodeIteratorRootPropertyInfo
+instance AttrInfo DOMNodeIteratorRootPropertyInfo where
+    type AttrAllowedOps DOMNodeIteratorRootPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeIteratorRootPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeIteratorRootPropertyInfo = DOMNodeIteratorK
+    type AttrGetType DOMNodeIteratorRootPropertyInfo = DOMNode
+    type AttrLabel DOMNodeIteratorRootPropertyInfo = "DOMNodeIterator::root"
+    attrGet _ = getDOMNodeIteratorRoot
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "what-to-show"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMNodeIteratorWhatToShow :: (MonadIO m, DOMNodeIteratorK o) => o -> m Word64
+getDOMNodeIteratorWhatToShow obj = liftIO $ getObjectPropertyUInt64 obj "what-to-show"
+
+data DOMNodeIteratorWhatToShowPropertyInfo
+instance AttrInfo DOMNodeIteratorWhatToShowPropertyInfo where
+    type AttrAllowedOps DOMNodeIteratorWhatToShowPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeIteratorWhatToShowPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeIteratorWhatToShowPropertyInfo = DOMNodeIteratorK
+    type AttrGetType DOMNodeIteratorWhatToShowPropertyInfo = Word64
+    type AttrLabel DOMNodeIteratorWhatToShowPropertyInfo = "DOMNodeIterator::what-to-show"
+    attrGet _ = getDOMNodeIteratorWhatToShow
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMNodeIterator = DOMNodeIteratorAttributeList
+type DOMNodeIteratorAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("expand-entity-references", DOMNodeIteratorExpandEntityReferencesPropertyInfo), '("filter", DOMNodeIteratorFilterPropertyInfo), '("pointer-before-reference-node", DOMNodeIteratorPointerBeforeReferenceNodePropertyInfo), '("reference-node", DOMNodeIteratorReferenceNodePropertyInfo), '("root", DOMNodeIteratorRootPropertyInfo), '("what-to-show", DOMNodeIteratorWhatToShowPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMNodeIterator = DOMNodeIteratorSignalList
+type DOMNodeIteratorSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMNodeIterator::detach
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_iterator_detach" webkit_dom_node_iterator_detach :: 
+    Ptr DOMNodeIterator ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNodeIterator"
+    IO ()
+
+
+dOMNodeIteratorDetach ::
+    (MonadIO m, DOMNodeIteratorK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMNodeIteratorDetach _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    webkit_dom_node_iterator_detach _obj'
+    touchManagedPtr _obj
+    return ()
+
+-- method DOMNodeIterator::get_expand_entity_references
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_iterator_get_expand_entity_references" webkit_dom_node_iterator_get_expand_entity_references :: 
+    Ptr DOMNodeIterator ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNodeIterator"
+    IO CInt
+
+
+dOMNodeIteratorGetExpandEntityReferences ::
+    (MonadIO m, DOMNodeIteratorK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMNodeIteratorGetExpandEntityReferences _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_iterator_get_expand_entity_references _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNodeIterator::get_filter
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNodeFilter"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_iterator_get_filter" webkit_dom_node_iterator_get_filter :: 
+    Ptr DOMNodeIterator ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNodeIterator"
+    IO (Ptr DOMNodeFilter)
+
+
+dOMNodeIteratorGetFilter ::
+    (MonadIO m, DOMNodeIteratorK a) =>
+    a ->                                    -- _obj
+    m DOMNodeFilter
+dOMNodeIteratorGetFilter _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_iterator_get_filter _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_iterator_get_filter" result
+    result' <- (wrapObject DOMNodeFilter) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNodeIterator::get_pointer_before_reference_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_iterator_get_pointer_before_reference_node" webkit_dom_node_iterator_get_pointer_before_reference_node :: 
+    Ptr DOMNodeIterator ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNodeIterator"
+    IO CInt
+
+
+dOMNodeIteratorGetPointerBeforeReferenceNode ::
+    (MonadIO m, DOMNodeIteratorK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMNodeIteratorGetPointerBeforeReferenceNode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_iterator_get_pointer_before_reference_node _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNodeIterator::get_reference_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_iterator_get_reference_node" webkit_dom_node_iterator_get_reference_node :: 
+    Ptr DOMNodeIterator ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNodeIterator"
+    IO (Ptr DOMNode)
+
+
+dOMNodeIteratorGetReferenceNode ::
+    (MonadIO m, DOMNodeIteratorK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMNodeIteratorGetReferenceNode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_iterator_get_reference_node _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_iterator_get_reference_node" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNodeIterator::get_root
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_iterator_get_root" webkit_dom_node_iterator_get_root :: 
+    Ptr DOMNodeIterator ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNodeIterator"
+    IO (Ptr DOMNode)
+
+
+dOMNodeIteratorGetRoot ::
+    (MonadIO m, DOMNodeIteratorK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMNodeIteratorGetRoot _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_iterator_get_root _obj'
+    checkUnexpectedReturnNULL "webkit_dom_node_iterator_get_root" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMNodeIterator::get_what_to_show
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_iterator_get_what_to_show" webkit_dom_node_iterator_get_what_to_show :: 
+    Ptr DOMNodeIterator ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNodeIterator"
+    IO Word64
+
+
+dOMNodeIteratorGetWhatToShow ::
+    (MonadIO m, DOMNodeIteratorK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMNodeIteratorGetWhatToShow _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_iterator_get_what_to_show _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMNodeIterator::next_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_iterator_next_node" webkit_dom_node_iterator_next_node :: 
+    Ptr DOMNodeIterator ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNodeIterator"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMNodeIteratorNextNode ::
+    (MonadIO m, DOMNodeIteratorK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMNodeIteratorNextNode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_node_iterator_next_node _obj'
+        checkUnexpectedReturnNULL "webkit_dom_node_iterator_next_node" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMNodeIterator::previous_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeIterator", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_iterator_previous_node" webkit_dom_node_iterator_previous_node :: 
+    Ptr DOMNodeIterator ->                  -- _obj : TInterface "WebKit2WebExtension" "DOMNodeIterator"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMNodeIteratorPreviousNode ::
+    (MonadIO m, DOMNodeIteratorK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMNodeIteratorPreviousNode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_node_iterator_previous_node _obj'
+        checkUnexpectedReturnNULL "webkit_dom_node_iterator_previous_node" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMNodeIterator.hs-boot b/GI/WebKit2WebExtension/Objects/DOMNodeIterator.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMNodeIterator.hs-boot
@@ -0,0 +1,19 @@
+module GI.WebKit2WebExtension.Objects.DOMNodeIterator where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMNodeIterator = DOMNodeIterator (ForeignPtr DOMNodeIterator)
+instance GObject DOMNodeIterator where
+class GObject o => DOMNodeIteratorK o
+instance (GObject o, IsDescendantOf DOMNodeIterator o) => DOMNodeIteratorK o
+data DOMNodeIteratorExpandEntityReferencesPropertyInfo
+data DOMNodeIteratorFilterPropertyInfo
+data DOMNodeIteratorPointerBeforeReferenceNodePropertyInfo
+data DOMNodeIteratorReferenceNodePropertyInfo
+data DOMNodeIteratorRootPropertyInfo
+data DOMNodeIteratorWhatToShowPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMNodeList.hs b/GI/WebKit2WebExtension/Objects/DOMNodeList.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMNodeList.hs
@@ -0,0 +1,147 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMNodeList
+    ( 
+
+-- * Exported types
+    DOMNodeList(..)                         ,
+    DOMNodeListK                            ,
+    toDOMNodeList                           ,
+    noDOMNodeList                           ,
+
+
+ -- * Methods
+-- ** dOMNodeListGetLength
+    dOMNodeListGetLength                    ,
+
+
+-- ** dOMNodeListItem
+    dOMNodeListItem                         ,
+
+
+
+
+ -- * Properties
+-- ** Length
+    DOMNodeListLengthPropertyInfo           ,
+    getDOMNodeListLength                    ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMNodeList = DOMNodeList (ForeignPtr DOMNodeList)
+foreign import ccall "webkit_dom_node_list_get_type"
+    c_webkit_dom_node_list_get_type :: IO GType
+
+type instance ParentTypes DOMNodeList = DOMNodeListParentTypes
+type DOMNodeListParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMNodeList where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_node_list_get_type
+    
+
+class GObject o => DOMNodeListK o
+instance (GObject o, IsDescendantOf DOMNodeList o) => DOMNodeListK o
+
+toDOMNodeList :: DOMNodeListK o => o -> IO DOMNodeList
+toDOMNodeList = unsafeCastTo DOMNodeList
+
+noDOMNodeList :: Maybe DOMNodeList
+noDOMNodeList = Nothing
+
+-- VVV Prop "length"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMNodeListLength :: (MonadIO m, DOMNodeListK o) => o -> m Word64
+getDOMNodeListLength obj = liftIO $ getObjectPropertyUInt64 obj "length"
+
+data DOMNodeListLengthPropertyInfo
+instance AttrInfo DOMNodeListLengthPropertyInfo where
+    type AttrAllowedOps DOMNodeListLengthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMNodeListLengthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMNodeListLengthPropertyInfo = DOMNodeListK
+    type AttrGetType DOMNodeListLengthPropertyInfo = Word64
+    type AttrLabel DOMNodeListLengthPropertyInfo = "DOMNodeList::length"
+    attrGet _ = getDOMNodeListLength
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMNodeList = DOMNodeListAttributeList
+type DOMNodeListAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("length", DOMNodeListLengthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMNodeList = DOMNodeListSignalList
+type DOMNodeListSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMNodeList::get_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_list_get_length" webkit_dom_node_list_get_length :: 
+    Ptr DOMNodeList ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMNodeList"
+    IO Word64
+
+
+dOMNodeListGetLength ::
+    (MonadIO m, DOMNodeListK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMNodeListGetLength _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_list_get_length _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMNodeList::item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMNodeList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_node_list_item" webkit_dom_node_list_item :: 
+    Ptr DOMNodeList ->                      -- _obj : TInterface "WebKit2WebExtension" "DOMNodeList"
+    Word64 ->                               -- index : TBasicType TUInt64
+    IO (Ptr DOMNode)
+
+
+dOMNodeListItem ::
+    (MonadIO m, DOMNodeListK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- index
+    m DOMNode
+dOMNodeListItem _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_node_list_item _obj' index
+    checkUnexpectedReturnNULL "webkit_dom_node_list_item" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMNodeList.hs-boot b/GI/WebKit2WebExtension/Objects/DOMNodeList.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMNodeList.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMNodeList where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMNodeList = DOMNodeList (ForeignPtr DOMNodeList)
+instance GObject DOMNodeList where
+class GObject o => DOMNodeListK o
+instance (GObject o, IsDescendantOf DOMNodeList o) => DOMNodeListK o
+data DOMNodeListLengthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMObject.hs b/GI/WebKit2WebExtension/Objects/DOMObject.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMObject.hs
@@ -0,0 +1,84 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMObject
+    ( 
+
+-- * Exported types
+    DOMObject(..)                           ,
+    DOMObjectK                              ,
+    toDOMObject                             ,
+    noDOMObject                             ,
+
+
+ -- * Properties
+-- ** CoreObject
+    DOMObjectCoreObjectPropertyInfo         ,
+    constructDOMObjectCoreObject            ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMObject = DOMObject (ForeignPtr DOMObject)
+foreign import ccall "webkit_dom_object_get_type"
+    c_webkit_dom_object_get_type :: IO GType
+
+type instance ParentTypes DOMObject = DOMObjectParentTypes
+type DOMObjectParentTypes = '[GObject.Object]
+
+instance GObject DOMObject where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_object_get_type
+    
+
+class GObject o => DOMObjectK o
+instance (GObject o, IsDescendantOf DOMObject o) => DOMObjectK o
+
+toDOMObject :: DOMObjectK o => o -> IO DOMObject
+toDOMObject = unsafeCastTo DOMObject
+
+noDOMObject :: Maybe DOMObject
+noDOMObject = Nothing
+
+-- VVV Prop "core-object"
+   -- Type: TBasicType TVoid
+   -- Flags: [PropertyWritable,PropertyConstructOnly]
+
+constructDOMObjectCoreObject :: (Ptr ()) -> IO ([Char], GValue)
+constructDOMObjectCoreObject val = constructObjectPropertyPtr "core-object" val
+
+data DOMObjectCoreObjectPropertyInfo
+instance AttrInfo DOMObjectCoreObjectPropertyInfo where
+    type AttrAllowedOps DOMObjectCoreObjectPropertyInfo = '[ 'AttrConstruct]
+    type AttrSetTypeConstraint DOMObjectCoreObjectPropertyInfo = (~) (Ptr ())
+    type AttrBaseTypeConstraint DOMObjectCoreObjectPropertyInfo = DOMObjectK
+    type AttrGetType DOMObjectCoreObjectPropertyInfo = ()
+    type AttrLabel DOMObjectCoreObjectPropertyInfo = "DOMObject::core-object"
+    attrGet _ = undefined
+    attrSet _ = undefined
+    attrConstruct _ = constructDOMObjectCoreObject
+
+type instance AttributeList DOMObject = DOMObjectAttributeList
+type DOMObjectAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMObject = DOMObjectSignalList
+type DOMObjectSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMObject.hs-boot b/GI/WebKit2WebExtension/Objects/DOMObject.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMObject.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMObject where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMObject = DOMObject (ForeignPtr DOMObject)
+instance GObject DOMObject where
+class GObject o => DOMObjectK o
+instance (GObject o, IsDescendantOf DOMObject o) => DOMObjectK o
+data DOMObjectCoreObjectPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMProcessingInstruction.hs b/GI/WebKit2WebExtension/Objects/DOMProcessingInstruction.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMProcessingInstruction.hs
@@ -0,0 +1,171 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMProcessingInstruction
+    ( 
+
+-- * Exported types
+    DOMProcessingInstruction(..)            ,
+    DOMProcessingInstructionK               ,
+    toDOMProcessingInstruction              ,
+    noDOMProcessingInstruction              ,
+
+
+ -- * Methods
+-- ** dOMProcessingInstructionGetSheet
+    dOMProcessingInstructionGetSheet        ,
+
+
+-- ** dOMProcessingInstructionGetTarget
+    dOMProcessingInstructionGetTarget       ,
+
+
+
+
+ -- * Properties
+-- ** Sheet
+    DOMProcessingInstructionSheetPropertyInfo,
+    getDOMProcessingInstructionSheet        ,
+
+
+-- ** Target
+    DOMProcessingInstructionTargetPropertyInfo,
+    getDOMProcessingInstructionTarget       ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMProcessingInstruction = DOMProcessingInstruction (ForeignPtr DOMProcessingInstruction)
+foreign import ccall "webkit_dom_processing_instruction_get_type"
+    c_webkit_dom_processing_instruction_get_type :: IO GType
+
+type instance ParentTypes DOMProcessingInstruction = DOMProcessingInstructionParentTypes
+type DOMProcessingInstructionParentTypes = '[DOMCharacterData, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMProcessingInstruction where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_processing_instruction_get_type
+    
+
+class GObject o => DOMProcessingInstructionK o
+instance (GObject o, IsDescendantOf DOMProcessingInstruction o) => DOMProcessingInstructionK o
+
+toDOMProcessingInstruction :: DOMProcessingInstructionK o => o -> IO DOMProcessingInstruction
+toDOMProcessingInstruction = unsafeCastTo DOMProcessingInstruction
+
+noDOMProcessingInstruction :: Maybe DOMProcessingInstruction
+noDOMProcessingInstruction = Nothing
+
+-- VVV Prop "sheet"
+   -- Type: TInterface "WebKit2WebExtension" "DOMStyleSheet"
+   -- Flags: [PropertyReadable]
+
+getDOMProcessingInstructionSheet :: (MonadIO m, DOMProcessingInstructionK o) => o -> m DOMStyleSheet
+getDOMProcessingInstructionSheet obj = liftIO $ getObjectPropertyObject obj "sheet" DOMStyleSheet
+
+data DOMProcessingInstructionSheetPropertyInfo
+instance AttrInfo DOMProcessingInstructionSheetPropertyInfo where
+    type AttrAllowedOps DOMProcessingInstructionSheetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMProcessingInstructionSheetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMProcessingInstructionSheetPropertyInfo = DOMProcessingInstructionK
+    type AttrGetType DOMProcessingInstructionSheetPropertyInfo = DOMStyleSheet
+    type AttrLabel DOMProcessingInstructionSheetPropertyInfo = "DOMProcessingInstruction::sheet"
+    attrGet _ = getDOMProcessingInstructionSheet
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "target"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMProcessingInstructionTarget :: (MonadIO m, DOMProcessingInstructionK o) => o -> m T.Text
+getDOMProcessingInstructionTarget obj = liftIO $ getObjectPropertyString obj "target"
+
+data DOMProcessingInstructionTargetPropertyInfo
+instance AttrInfo DOMProcessingInstructionTargetPropertyInfo where
+    type AttrAllowedOps DOMProcessingInstructionTargetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMProcessingInstructionTargetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMProcessingInstructionTargetPropertyInfo = DOMProcessingInstructionK
+    type AttrGetType DOMProcessingInstructionTargetPropertyInfo = T.Text
+    type AttrLabel DOMProcessingInstructionTargetPropertyInfo = "DOMProcessingInstruction::target"
+    attrGet _ = getDOMProcessingInstructionTarget
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMProcessingInstruction = DOMProcessingInstructionAttributeList
+type DOMProcessingInstructionAttributeList = ('[ '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("data", DOMCharacterDataDataPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("length", DOMCharacterDataLengthPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("sheet", DOMProcessingInstructionSheetPropertyInfo), '("target", DOMProcessingInstructionTargetPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMProcessingInstruction = DOMProcessingInstructionSignalList
+type DOMProcessingInstructionSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMProcessingInstruction::get_sheet
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMProcessingInstruction", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMProcessingInstruction", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMStyleSheet"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_processing_instruction_get_sheet" webkit_dom_processing_instruction_get_sheet :: 
+    Ptr DOMProcessingInstruction ->         -- _obj : TInterface "WebKit2WebExtension" "DOMProcessingInstruction"
+    IO (Ptr DOMStyleSheet)
+
+
+dOMProcessingInstructionGetSheet ::
+    (MonadIO m, DOMProcessingInstructionK a) =>
+    a ->                                    -- _obj
+    m DOMStyleSheet
+dOMProcessingInstructionGetSheet _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_processing_instruction_get_sheet _obj'
+    checkUnexpectedReturnNULL "webkit_dom_processing_instruction_get_sheet" result
+    result' <- (wrapObject DOMStyleSheet) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMProcessingInstruction::get_target
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMProcessingInstruction", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMProcessingInstruction", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_processing_instruction_get_target" webkit_dom_processing_instruction_get_target :: 
+    Ptr DOMProcessingInstruction ->         -- _obj : TInterface "WebKit2WebExtension" "DOMProcessingInstruction"
+    IO CString
+
+
+dOMProcessingInstructionGetTarget ::
+    (MonadIO m, DOMProcessingInstructionK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMProcessingInstructionGetTarget _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_processing_instruction_get_target _obj'
+    checkUnexpectedReturnNULL "webkit_dom_processing_instruction_get_target" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMProcessingInstruction.hs-boot b/GI/WebKit2WebExtension/Objects/DOMProcessingInstruction.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMProcessingInstruction.hs-boot
@@ -0,0 +1,15 @@
+module GI.WebKit2WebExtension.Objects.DOMProcessingInstruction where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMProcessingInstruction = DOMProcessingInstruction (ForeignPtr DOMProcessingInstruction)
+instance GObject DOMProcessingInstruction where
+class GObject o => DOMProcessingInstructionK o
+instance (GObject o, IsDescendantOf DOMProcessingInstruction o) => DOMProcessingInstructionK o
+data DOMProcessingInstructionSheetPropertyInfo
+data DOMProcessingInstructionTargetPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMRange.hs b/GI/WebKit2WebExtension/Objects/DOMRange.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMRange.hs
@@ -0,0 +1,1307 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMRange
+    ( 
+
+-- * Exported types
+    DOMRange(..)                            ,
+    DOMRangeK                               ,
+    toDOMRange                              ,
+    noDOMRange                              ,
+
+
+ -- * Methods
+-- ** dOMRangeCloneContents
+    dOMRangeCloneContents                   ,
+
+
+-- ** dOMRangeCloneRange
+    dOMRangeCloneRange                      ,
+
+
+-- ** dOMRangeCollapse
+    dOMRangeCollapse                        ,
+
+
+-- ** dOMRangeCompareBoundaryPoints
+    dOMRangeCompareBoundaryPoints           ,
+
+
+-- ** dOMRangeCompareNode
+    dOMRangeCompareNode                     ,
+
+
+-- ** dOMRangeComparePoint
+    dOMRangeComparePoint                    ,
+
+
+-- ** dOMRangeCreateContextualFragment
+    dOMRangeCreateContextualFragment        ,
+
+
+-- ** dOMRangeDeleteContents
+    dOMRangeDeleteContents                  ,
+
+
+-- ** dOMRangeDetach
+    dOMRangeDetach                          ,
+
+
+-- ** dOMRangeExtractContents
+    dOMRangeExtractContents                 ,
+
+
+-- ** dOMRangeGetCollapsed
+    dOMRangeGetCollapsed                    ,
+
+
+-- ** dOMRangeGetCommonAncestorContainer
+    dOMRangeGetCommonAncestorContainer      ,
+
+
+-- ** dOMRangeGetEndContainer
+    dOMRangeGetEndContainer                 ,
+
+
+-- ** dOMRangeGetEndOffset
+    dOMRangeGetEndOffset                    ,
+
+
+-- ** dOMRangeGetStartContainer
+    dOMRangeGetStartContainer               ,
+
+
+-- ** dOMRangeGetStartOffset
+    dOMRangeGetStartOffset                  ,
+
+
+-- ** dOMRangeGetText
+    dOMRangeGetText                         ,
+
+
+-- ** dOMRangeInsertNode
+    dOMRangeInsertNode                      ,
+
+
+-- ** dOMRangeIntersectsNode
+    dOMRangeIntersectsNode                  ,
+
+
+-- ** dOMRangeIsPointInRange
+    dOMRangeIsPointInRange                  ,
+
+
+-- ** dOMRangeSelectNode
+    dOMRangeSelectNode                      ,
+
+
+-- ** dOMRangeSelectNodeContents
+    dOMRangeSelectNodeContents              ,
+
+
+-- ** dOMRangeSetEnd
+    dOMRangeSetEnd                          ,
+
+
+-- ** dOMRangeSetEndAfter
+    dOMRangeSetEndAfter                     ,
+
+
+-- ** dOMRangeSetEndBefore
+    dOMRangeSetEndBefore                    ,
+
+
+-- ** dOMRangeSetStart
+    dOMRangeSetStart                        ,
+
+
+-- ** dOMRangeSetStartAfter
+    dOMRangeSetStartAfter                   ,
+
+
+-- ** dOMRangeSetStartBefore
+    dOMRangeSetStartBefore                  ,
+
+
+-- ** dOMRangeSurroundContents
+    dOMRangeSurroundContents                ,
+
+
+-- ** dOMRangeToString
+    dOMRangeToString                        ,
+
+
+
+
+ -- * Properties
+-- ** Collapsed
+    DOMRangeCollapsedPropertyInfo           ,
+    getDOMRangeCollapsed                    ,
+
+
+-- ** CommonAncestorContainer
+    DOMRangeCommonAncestorContainerPropertyInfo,
+    getDOMRangeCommonAncestorContainer      ,
+
+
+-- ** EndContainer
+    DOMRangeEndContainerPropertyInfo        ,
+    getDOMRangeEndContainer                 ,
+
+
+-- ** EndOffset
+    DOMRangeEndOffsetPropertyInfo           ,
+    getDOMRangeEndOffset                    ,
+
+
+-- ** StartContainer
+    DOMRangeStartContainerPropertyInfo      ,
+    getDOMRangeStartContainer               ,
+
+
+-- ** StartOffset
+    DOMRangeStartOffsetPropertyInfo         ,
+    getDOMRangeStartOffset                  ,
+
+
+-- ** Text
+    DOMRangeTextPropertyInfo                ,
+    getDOMRangeText                         ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMRange = DOMRange (ForeignPtr DOMRange)
+foreign import ccall "webkit_dom_range_get_type"
+    c_webkit_dom_range_get_type :: IO GType
+
+type instance ParentTypes DOMRange = DOMRangeParentTypes
+type DOMRangeParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMRange where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_range_get_type
+    
+
+class GObject o => DOMRangeK o
+instance (GObject o, IsDescendantOf DOMRange o) => DOMRangeK o
+
+toDOMRange :: DOMRangeK o => o -> IO DOMRange
+toDOMRange = unsafeCastTo DOMRange
+
+noDOMRange :: Maybe DOMRange
+noDOMRange = Nothing
+
+-- VVV Prop "collapsed"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMRangeCollapsed :: (MonadIO m, DOMRangeK o) => o -> m Bool
+getDOMRangeCollapsed obj = liftIO $ getObjectPropertyBool obj "collapsed"
+
+data DOMRangeCollapsedPropertyInfo
+instance AttrInfo DOMRangeCollapsedPropertyInfo where
+    type AttrAllowedOps DOMRangeCollapsedPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMRangeCollapsedPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMRangeCollapsedPropertyInfo = DOMRangeK
+    type AttrGetType DOMRangeCollapsedPropertyInfo = Bool
+    type AttrLabel DOMRangeCollapsedPropertyInfo = "DOMRange::collapsed"
+    attrGet _ = getDOMRangeCollapsed
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "common-ancestor-container"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMRangeCommonAncestorContainer :: (MonadIO m, DOMRangeK o) => o -> m DOMNode
+getDOMRangeCommonAncestorContainer obj = liftIO $ getObjectPropertyObject obj "common-ancestor-container" DOMNode
+
+data DOMRangeCommonAncestorContainerPropertyInfo
+instance AttrInfo DOMRangeCommonAncestorContainerPropertyInfo where
+    type AttrAllowedOps DOMRangeCommonAncestorContainerPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMRangeCommonAncestorContainerPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMRangeCommonAncestorContainerPropertyInfo = DOMRangeK
+    type AttrGetType DOMRangeCommonAncestorContainerPropertyInfo = DOMNode
+    type AttrLabel DOMRangeCommonAncestorContainerPropertyInfo = "DOMRange::common-ancestor-container"
+    attrGet _ = getDOMRangeCommonAncestorContainer
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "end-container"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMRangeEndContainer :: (MonadIO m, DOMRangeK o) => o -> m DOMNode
+getDOMRangeEndContainer obj = liftIO $ getObjectPropertyObject obj "end-container" DOMNode
+
+data DOMRangeEndContainerPropertyInfo
+instance AttrInfo DOMRangeEndContainerPropertyInfo where
+    type AttrAllowedOps DOMRangeEndContainerPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMRangeEndContainerPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMRangeEndContainerPropertyInfo = DOMRangeK
+    type AttrGetType DOMRangeEndContainerPropertyInfo = DOMNode
+    type AttrLabel DOMRangeEndContainerPropertyInfo = "DOMRange::end-container"
+    attrGet _ = getDOMRangeEndContainer
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "end-offset"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMRangeEndOffset :: (MonadIO m, DOMRangeK o) => o -> m Int64
+getDOMRangeEndOffset obj = liftIO $ getObjectPropertyInt64 obj "end-offset"
+
+data DOMRangeEndOffsetPropertyInfo
+instance AttrInfo DOMRangeEndOffsetPropertyInfo where
+    type AttrAllowedOps DOMRangeEndOffsetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMRangeEndOffsetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMRangeEndOffsetPropertyInfo = DOMRangeK
+    type AttrGetType DOMRangeEndOffsetPropertyInfo = Int64
+    type AttrLabel DOMRangeEndOffsetPropertyInfo = "DOMRange::end-offset"
+    attrGet _ = getDOMRangeEndOffset
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "start-container"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMRangeStartContainer :: (MonadIO m, DOMRangeK o) => o -> m DOMNode
+getDOMRangeStartContainer obj = liftIO $ getObjectPropertyObject obj "start-container" DOMNode
+
+data DOMRangeStartContainerPropertyInfo
+instance AttrInfo DOMRangeStartContainerPropertyInfo where
+    type AttrAllowedOps DOMRangeStartContainerPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMRangeStartContainerPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMRangeStartContainerPropertyInfo = DOMRangeK
+    type AttrGetType DOMRangeStartContainerPropertyInfo = DOMNode
+    type AttrLabel DOMRangeStartContainerPropertyInfo = "DOMRange::start-container"
+    attrGet _ = getDOMRangeStartContainer
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "start-offset"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMRangeStartOffset :: (MonadIO m, DOMRangeK o) => o -> m Int64
+getDOMRangeStartOffset obj = liftIO $ getObjectPropertyInt64 obj "start-offset"
+
+data DOMRangeStartOffsetPropertyInfo
+instance AttrInfo DOMRangeStartOffsetPropertyInfo where
+    type AttrAllowedOps DOMRangeStartOffsetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMRangeStartOffsetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMRangeStartOffsetPropertyInfo = DOMRangeK
+    type AttrGetType DOMRangeStartOffsetPropertyInfo = Int64
+    type AttrLabel DOMRangeStartOffsetPropertyInfo = "DOMRange::start-offset"
+    attrGet _ = getDOMRangeStartOffset
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "text"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMRangeText :: (MonadIO m, DOMRangeK o) => o -> m T.Text
+getDOMRangeText obj = liftIO $ getObjectPropertyString obj "text"
+
+data DOMRangeTextPropertyInfo
+instance AttrInfo DOMRangeTextPropertyInfo where
+    type AttrAllowedOps DOMRangeTextPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMRangeTextPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMRangeTextPropertyInfo = DOMRangeK
+    type AttrGetType DOMRangeTextPropertyInfo = T.Text
+    type AttrLabel DOMRangeTextPropertyInfo = "DOMRange::text"
+    attrGet _ = getDOMRangeText
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMRange = DOMRangeAttributeList
+type DOMRangeAttributeList = ('[ '("collapsed", DOMRangeCollapsedPropertyInfo), '("common-ancestor-container", DOMRangeCommonAncestorContainerPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("end-container", DOMRangeEndContainerPropertyInfo), '("end-offset", DOMRangeEndOffsetPropertyInfo), '("start-container", DOMRangeStartContainerPropertyInfo), '("start-offset", DOMRangeStartOffsetPropertyInfo), '("text", DOMRangeTextPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMRange = DOMRangeSignalList
+type DOMRangeSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMRange::clone_contents
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDocumentFragment"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_clone_contents" webkit_dom_range_clone_contents :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMDocumentFragment)
+
+
+dOMRangeCloneContents ::
+    (MonadIO m, DOMRangeK a) =>
+    a ->                                    -- _obj
+    m DOMDocumentFragment
+dOMRangeCloneContents _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_range_clone_contents _obj'
+        checkUnexpectedReturnNULL "webkit_dom_range_clone_contents" result
+        result' <- (newObject DOMDocumentFragment) result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::clone_range
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMRange"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_clone_range" webkit_dom_range_clone_range :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMRange)
+
+
+dOMRangeCloneRange ::
+    (MonadIO m, DOMRangeK a) =>
+    a ->                                    -- _obj
+    m DOMRange
+dOMRangeCloneRange _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_range_clone_range _obj'
+        checkUnexpectedReturnNULL "webkit_dom_range_clone_range" result
+        result' <- (wrapObject DOMRange) result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::collapse
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "toStart", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "toStart", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_collapse" webkit_dom_range_collapse :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    CInt ->                                 -- toStart : TBasicType TBoolean
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMRangeCollapse ::
+    (MonadIO m, DOMRangeK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- toStart
+    m ()
+dOMRangeCollapse _obj toStart = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let toStart' = (fromIntegral . fromEnum) toStart
+    onException (do
+        propagateGError $ webkit_dom_range_collapse _obj' toStart'
+        touchManagedPtr _obj
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::compare_boundary_points
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "how", argType = TBasicType TUInt16, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "sourceRange", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "how", argType = TBasicType TUInt16, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "sourceRange", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt16
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_compare_boundary_points" webkit_dom_range_compare_boundary_points :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Word16 ->                               -- how : TBasicType TUInt16
+    Ptr DOMRange ->                         -- sourceRange : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr (Ptr GError) ->                     -- error
+    IO Int16
+
+
+dOMRangeCompareBoundaryPoints ::
+    (MonadIO m, DOMRangeK a, DOMRangeK b) =>
+    a ->                                    -- _obj
+    Word16 ->                               -- how
+    b ->                                    -- sourceRange
+    m Int16
+dOMRangeCompareBoundaryPoints _obj how sourceRange = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let sourceRange' = unsafeManagedPtrCastPtr sourceRange
+    onException (do
+        result <- propagateGError $ webkit_dom_range_compare_boundary_points _obj' how sourceRange'
+        touchManagedPtr _obj
+        touchManagedPtr sourceRange
+        return result
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::compare_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt16
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_compare_node" webkit_dom_range_compare_node :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr DOMNode ->                          -- refNode : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO Int16
+
+
+dOMRangeCompareNode ::
+    (MonadIO m, DOMRangeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- refNode
+    m Int16
+dOMRangeCompareNode _obj refNode = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let refNode' = unsafeManagedPtrCastPtr refNode
+    onException (do
+        result <- propagateGError $ webkit_dom_range_compare_node _obj' refNode'
+        touchManagedPtr _obj
+        touchManagedPtr refNode
+        return result
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::compare_point
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt16
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_compare_point" webkit_dom_range_compare_point :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr DOMNode ->                          -- refNode : TInterface "WebKit2WebExtension" "DOMNode"
+    Int64 ->                                -- offset : TBasicType TInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO Int16
+
+
+dOMRangeComparePoint ::
+    (MonadIO m, DOMRangeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- refNode
+    Int64 ->                                -- offset
+    m Int16
+dOMRangeComparePoint _obj refNode offset = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let refNode' = unsafeManagedPtrCastPtr refNode
+    onException (do
+        result <- propagateGError $ webkit_dom_range_compare_point _obj' refNode' offset
+        touchManagedPtr _obj
+        touchManagedPtr refNode
+        return result
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::create_contextual_fragment
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "html", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "html", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDocumentFragment"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_create_contextual_fragment" webkit_dom_range_create_contextual_fragment :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    CString ->                              -- html : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMDocumentFragment)
+
+
+dOMRangeCreateContextualFragment ::
+    (MonadIO m, DOMRangeK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- html
+    m DOMDocumentFragment
+dOMRangeCreateContextualFragment _obj html = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    html' <- textToCString html
+    onException (do
+        result <- propagateGError $ webkit_dom_range_create_contextual_fragment _obj' html'
+        checkUnexpectedReturnNULL "webkit_dom_range_create_contextual_fragment" result
+        result' <- (newObject DOMDocumentFragment) result
+        touchManagedPtr _obj
+        freeMem html'
+        return result'
+     ) (do
+        freeMem html'
+     )
+
+-- method DOMRange::delete_contents
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_delete_contents" webkit_dom_range_delete_contents :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMRangeDeleteContents ::
+    (MonadIO m, DOMRangeK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMRangeDeleteContents _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        propagateGError $ webkit_dom_range_delete_contents _obj'
+        touchManagedPtr _obj
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::detach
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_detach" webkit_dom_range_detach :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMRangeDetach ::
+    (MonadIO m, DOMRangeK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMRangeDetach _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        propagateGError $ webkit_dom_range_detach _obj'
+        touchManagedPtr _obj
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::extract_contents
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDocumentFragment"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_extract_contents" webkit_dom_range_extract_contents :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMDocumentFragment)
+
+
+dOMRangeExtractContents ::
+    (MonadIO m, DOMRangeK a) =>
+    a ->                                    -- _obj
+    m DOMDocumentFragment
+dOMRangeExtractContents _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_range_extract_contents _obj'
+        checkUnexpectedReturnNULL "webkit_dom_range_extract_contents" result
+        result' <- (newObject DOMDocumentFragment) result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::get_collapsed
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_get_collapsed" webkit_dom_range_get_collapsed :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr (Ptr GError) ->                     -- error
+    IO CInt
+
+
+dOMRangeGetCollapsed ::
+    (MonadIO m, DOMRangeK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMRangeGetCollapsed _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        _ <- propagateGError $ webkit_dom_range_get_collapsed _obj'
+        touchManagedPtr _obj
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::get_common_ancestor_container
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_get_common_ancestor_container" webkit_dom_range_get_common_ancestor_container :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMRangeGetCommonAncestorContainer ::
+    (MonadIO m, DOMRangeK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMRangeGetCommonAncestorContainer _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_range_get_common_ancestor_container _obj'
+        checkUnexpectedReturnNULL "webkit_dom_range_get_common_ancestor_container" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::get_end_container
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_get_end_container" webkit_dom_range_get_end_container :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMRangeGetEndContainer ::
+    (MonadIO m, DOMRangeK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMRangeGetEndContainer _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_range_get_end_container _obj'
+        checkUnexpectedReturnNULL "webkit_dom_range_get_end_container" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::get_end_offset
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_get_end_offset" webkit_dom_range_get_end_offset :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr (Ptr GError) ->                     -- error
+    IO Int64
+
+
+dOMRangeGetEndOffset ::
+    (MonadIO m, DOMRangeK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMRangeGetEndOffset _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_range_get_end_offset _obj'
+        touchManagedPtr _obj
+        return result
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::get_start_container
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_get_start_container" webkit_dom_range_get_start_container :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMRangeGetStartContainer ::
+    (MonadIO m, DOMRangeK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMRangeGetStartContainer _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_range_get_start_container _obj'
+        checkUnexpectedReturnNULL "webkit_dom_range_get_start_container" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::get_start_offset
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_get_start_offset" webkit_dom_range_get_start_offset :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr (Ptr GError) ->                     -- error
+    IO Int64
+
+
+dOMRangeGetStartOffset ::
+    (MonadIO m, DOMRangeK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMRangeGetStartOffset _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_range_get_start_offset _obj'
+        touchManagedPtr _obj
+        return result
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::get_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_get_text" webkit_dom_range_get_text :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    IO CString
+
+
+dOMRangeGetText ::
+    (MonadIO m, DOMRangeK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMRangeGetText _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_range_get_text _obj'
+    checkUnexpectedReturnNULL "webkit_dom_range_get_text" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMRange::insert_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_insert_node" webkit_dom_range_insert_node :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr DOMNode ->                          -- newNode : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMRangeInsertNode ::
+    (MonadIO m, DOMRangeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- newNode
+    m ()
+dOMRangeInsertNode _obj newNode = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let newNode' = unsafeManagedPtrCastPtr newNode
+    onException (do
+        propagateGError $ webkit_dom_range_insert_node _obj' newNode'
+        touchManagedPtr _obj
+        touchManagedPtr newNode
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::intersects_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_intersects_node" webkit_dom_range_intersects_node :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr DOMNode ->                          -- refNode : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO CInt
+
+
+dOMRangeIntersectsNode ::
+    (MonadIO m, DOMRangeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- refNode
+    m ()
+dOMRangeIntersectsNode _obj refNode = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let refNode' = unsafeManagedPtrCastPtr refNode
+    onException (do
+        _ <- propagateGError $ webkit_dom_range_intersects_node _obj' refNode'
+        touchManagedPtr _obj
+        touchManagedPtr refNode
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::is_point_in_range
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_is_point_in_range" webkit_dom_range_is_point_in_range :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr DOMNode ->                          -- refNode : TInterface "WebKit2WebExtension" "DOMNode"
+    Int64 ->                                -- offset : TBasicType TInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO CInt
+
+
+dOMRangeIsPointInRange ::
+    (MonadIO m, DOMRangeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- refNode
+    Int64 ->                                -- offset
+    m ()
+dOMRangeIsPointInRange _obj refNode offset = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let refNode' = unsafeManagedPtrCastPtr refNode
+    onException (do
+        _ <- propagateGError $ webkit_dom_range_is_point_in_range _obj' refNode' offset
+        touchManagedPtr _obj
+        touchManagedPtr refNode
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::select_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_select_node" webkit_dom_range_select_node :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr DOMNode ->                          -- refNode : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMRangeSelectNode ::
+    (MonadIO m, DOMRangeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- refNode
+    m ()
+dOMRangeSelectNode _obj refNode = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let refNode' = unsafeManagedPtrCastPtr refNode
+    onException (do
+        propagateGError $ webkit_dom_range_select_node _obj' refNode'
+        touchManagedPtr _obj
+        touchManagedPtr refNode
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::select_node_contents
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_select_node_contents" webkit_dom_range_select_node_contents :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr DOMNode ->                          -- refNode : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMRangeSelectNodeContents ::
+    (MonadIO m, DOMRangeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- refNode
+    m ()
+dOMRangeSelectNodeContents _obj refNode = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let refNode' = unsafeManagedPtrCastPtr refNode
+    onException (do
+        propagateGError $ webkit_dom_range_select_node_contents _obj' refNode'
+        touchManagedPtr _obj
+        touchManagedPtr refNode
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::set_end
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_set_end" webkit_dom_range_set_end :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr DOMNode ->                          -- refNode : TInterface "WebKit2WebExtension" "DOMNode"
+    Int64 ->                                -- offset : TBasicType TInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMRangeSetEnd ::
+    (MonadIO m, DOMRangeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- refNode
+    Int64 ->                                -- offset
+    m ()
+dOMRangeSetEnd _obj refNode offset = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let refNode' = unsafeManagedPtrCastPtr refNode
+    onException (do
+        propagateGError $ webkit_dom_range_set_end _obj' refNode' offset
+        touchManagedPtr _obj
+        touchManagedPtr refNode
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::set_end_after
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_set_end_after" webkit_dom_range_set_end_after :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr DOMNode ->                          -- refNode : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMRangeSetEndAfter ::
+    (MonadIO m, DOMRangeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- refNode
+    m ()
+dOMRangeSetEndAfter _obj refNode = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let refNode' = unsafeManagedPtrCastPtr refNode
+    onException (do
+        propagateGError $ webkit_dom_range_set_end_after _obj' refNode'
+        touchManagedPtr _obj
+        touchManagedPtr refNode
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::set_end_before
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_set_end_before" webkit_dom_range_set_end_before :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr DOMNode ->                          -- refNode : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMRangeSetEndBefore ::
+    (MonadIO m, DOMRangeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- refNode
+    m ()
+dOMRangeSetEndBefore _obj refNode = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let refNode' = unsafeManagedPtrCastPtr refNode
+    onException (do
+        propagateGError $ webkit_dom_range_set_end_before _obj' refNode'
+        touchManagedPtr _obj
+        touchManagedPtr refNode
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::set_start
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_set_start" webkit_dom_range_set_start :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr DOMNode ->                          -- refNode : TInterface "WebKit2WebExtension" "DOMNode"
+    Int64 ->                                -- offset : TBasicType TInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMRangeSetStart ::
+    (MonadIO m, DOMRangeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- refNode
+    Int64 ->                                -- offset
+    m ()
+dOMRangeSetStart _obj refNode offset = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let refNode' = unsafeManagedPtrCastPtr refNode
+    onException (do
+        propagateGError $ webkit_dom_range_set_start _obj' refNode' offset
+        touchManagedPtr _obj
+        touchManagedPtr refNode
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::set_start_after
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_set_start_after" webkit_dom_range_set_start_after :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr DOMNode ->                          -- refNode : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMRangeSetStartAfter ::
+    (MonadIO m, DOMRangeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- refNode
+    m ()
+dOMRangeSetStartAfter _obj refNode = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let refNode' = unsafeManagedPtrCastPtr refNode
+    onException (do
+        propagateGError $ webkit_dom_range_set_start_after _obj' refNode'
+        touchManagedPtr _obj
+        touchManagedPtr refNode
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::set_start_before
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "refNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_set_start_before" webkit_dom_range_set_start_before :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr DOMNode ->                          -- refNode : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMRangeSetStartBefore ::
+    (MonadIO m, DOMRangeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- refNode
+    m ()
+dOMRangeSetStartBefore _obj refNode = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let refNode' = unsafeManagedPtrCastPtr refNode
+    onException (do
+        propagateGError $ webkit_dom_range_set_start_before _obj' refNode'
+        touchManagedPtr _obj
+        touchManagedPtr refNode
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::surround_contents
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newParent", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "newParent", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_surround_contents" webkit_dom_range_surround_contents :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr DOMNode ->                          -- newParent : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMRangeSurroundContents ::
+    (MonadIO m, DOMRangeK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- newParent
+    m ()
+dOMRangeSurroundContents _obj newParent = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let newParent' = unsafeManagedPtrCastPtr newParent
+    onException (do
+        propagateGError $ webkit_dom_range_surround_contents _obj' newParent'
+        touchManagedPtr _obj
+        touchManagedPtr newParent
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMRange::to_string
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMRange", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_range_to_string" webkit_dom_range_to_string :: 
+    Ptr DOMRange ->                         -- _obj : TInterface "WebKit2WebExtension" "DOMRange"
+    Ptr (Ptr GError) ->                     -- error
+    IO CString
+
+
+dOMRangeToString ::
+    (MonadIO m, DOMRangeK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMRangeToString _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_range_to_string _obj'
+        checkUnexpectedReturnNULL "webkit_dom_range_to_string" result
+        result' <- cstringToText result
+        freeMem result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMRange.hs-boot b/GI/WebKit2WebExtension/Objects/DOMRange.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMRange.hs-boot
@@ -0,0 +1,20 @@
+module GI.WebKit2WebExtension.Objects.DOMRange where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMRange = DOMRange (ForeignPtr DOMRange)
+instance GObject DOMRange where
+class GObject o => DOMRangeK o
+instance (GObject o, IsDescendantOf DOMRange o) => DOMRangeK o
+data DOMRangeCollapsedPropertyInfo
+data DOMRangeCommonAncestorContainerPropertyInfo
+data DOMRangeEndContainerPropertyInfo
+data DOMRangeEndOffsetPropertyInfo
+data DOMRangeStartContainerPropertyInfo
+data DOMRangeStartOffsetPropertyInfo
+data DOMRangeTextPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMStyleSheet.hs b/GI/WebKit2WebExtension/Objects/DOMStyleSheet.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMStyleSheet.hs
@@ -0,0 +1,476 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMStyleSheet
+    ( 
+
+-- * Exported types
+    DOMStyleSheet(..)                       ,
+    DOMStyleSheetK                          ,
+    toDOMStyleSheet                         ,
+    noDOMStyleSheet                         ,
+
+
+ -- * Methods
+-- ** dOMStyleSheetGetContentType
+    dOMStyleSheetGetContentType             ,
+
+
+-- ** dOMStyleSheetGetDisabled
+    dOMStyleSheetGetDisabled                ,
+
+
+-- ** dOMStyleSheetGetHref
+    dOMStyleSheetGetHref                    ,
+
+
+-- ** dOMStyleSheetGetMedia
+    dOMStyleSheetGetMedia                   ,
+
+
+-- ** dOMStyleSheetGetOwnerNode
+    dOMStyleSheetGetOwnerNode               ,
+
+
+-- ** dOMStyleSheetGetParentStyleSheet
+    dOMStyleSheetGetParentStyleSheet        ,
+
+
+-- ** dOMStyleSheetGetTitle
+    dOMStyleSheetGetTitle                   ,
+
+
+-- ** dOMStyleSheetSetDisabled
+    dOMStyleSheetSetDisabled                ,
+
+
+
+
+ -- * Properties
+-- ** Disabled
+    DOMStyleSheetDisabledPropertyInfo       ,
+    constructDOMStyleSheetDisabled          ,
+    getDOMStyleSheetDisabled                ,
+    setDOMStyleSheetDisabled                ,
+
+
+-- ** Href
+    DOMStyleSheetHrefPropertyInfo           ,
+    getDOMStyleSheetHref                    ,
+
+
+-- ** Media
+    DOMStyleSheetMediaPropertyInfo          ,
+    getDOMStyleSheetMedia                   ,
+
+
+-- ** OwnerNode
+    DOMStyleSheetOwnerNodePropertyInfo      ,
+    getDOMStyleSheetOwnerNode               ,
+
+
+-- ** ParentStyleSheet
+    DOMStyleSheetParentStyleSheetPropertyInfo,
+    getDOMStyleSheetParentStyleSheet        ,
+
+
+-- ** Title
+    DOMStyleSheetTitlePropertyInfo          ,
+    getDOMStyleSheetTitle                   ,
+
+
+-- ** Type
+    DOMStyleSheetTypePropertyInfo           ,
+    getDOMStyleSheetType                    ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMStyleSheet = DOMStyleSheet (ForeignPtr DOMStyleSheet)
+foreign import ccall "webkit_dom_style_sheet_get_type"
+    c_webkit_dom_style_sheet_get_type :: IO GType
+
+type instance ParentTypes DOMStyleSheet = DOMStyleSheetParentTypes
+type DOMStyleSheetParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMStyleSheet where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_style_sheet_get_type
+    
+
+class GObject o => DOMStyleSheetK o
+instance (GObject o, IsDescendantOf DOMStyleSheet o) => DOMStyleSheetK o
+
+toDOMStyleSheet :: DOMStyleSheetK o => o -> IO DOMStyleSheet
+toDOMStyleSheet = unsafeCastTo DOMStyleSheet
+
+noDOMStyleSheet :: Maybe DOMStyleSheet
+noDOMStyleSheet = Nothing
+
+-- VVV Prop "disabled"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable,PropertyWritable]
+
+getDOMStyleSheetDisabled :: (MonadIO m, DOMStyleSheetK o) => o -> m Bool
+getDOMStyleSheetDisabled obj = liftIO $ getObjectPropertyBool obj "disabled"
+
+setDOMStyleSheetDisabled :: (MonadIO m, DOMStyleSheetK o) => o -> Bool -> m ()
+setDOMStyleSheetDisabled obj val = liftIO $ setObjectPropertyBool obj "disabled" val
+
+constructDOMStyleSheetDisabled :: Bool -> IO ([Char], GValue)
+constructDOMStyleSheetDisabled val = constructObjectPropertyBool "disabled" val
+
+data DOMStyleSheetDisabledPropertyInfo
+instance AttrInfo DOMStyleSheetDisabledPropertyInfo where
+    type AttrAllowedOps DOMStyleSheetDisabledPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint DOMStyleSheetDisabledPropertyInfo = (~) Bool
+    type AttrBaseTypeConstraint DOMStyleSheetDisabledPropertyInfo = DOMStyleSheetK
+    type AttrGetType DOMStyleSheetDisabledPropertyInfo = Bool
+    type AttrLabel DOMStyleSheetDisabledPropertyInfo = "DOMStyleSheet::disabled"
+    attrGet _ = getDOMStyleSheetDisabled
+    attrSet _ = setDOMStyleSheetDisabled
+    attrConstruct _ = constructDOMStyleSheetDisabled
+
+-- VVV Prop "href"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMStyleSheetHref :: (MonadIO m, DOMStyleSheetK o) => o -> m T.Text
+getDOMStyleSheetHref obj = liftIO $ getObjectPropertyString obj "href"
+
+data DOMStyleSheetHrefPropertyInfo
+instance AttrInfo DOMStyleSheetHrefPropertyInfo where
+    type AttrAllowedOps DOMStyleSheetHrefPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMStyleSheetHrefPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMStyleSheetHrefPropertyInfo = DOMStyleSheetK
+    type AttrGetType DOMStyleSheetHrefPropertyInfo = T.Text
+    type AttrLabel DOMStyleSheetHrefPropertyInfo = "DOMStyleSheet::href"
+    attrGet _ = getDOMStyleSheetHref
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "media"
+   -- Type: TInterface "WebKit2WebExtension" "DOMMediaList"
+   -- Flags: [PropertyReadable]
+
+getDOMStyleSheetMedia :: (MonadIO m, DOMStyleSheetK o) => o -> m DOMMediaList
+getDOMStyleSheetMedia obj = liftIO $ getObjectPropertyObject obj "media" DOMMediaList
+
+data DOMStyleSheetMediaPropertyInfo
+instance AttrInfo DOMStyleSheetMediaPropertyInfo where
+    type AttrAllowedOps DOMStyleSheetMediaPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMStyleSheetMediaPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMStyleSheetMediaPropertyInfo = DOMStyleSheetK
+    type AttrGetType DOMStyleSheetMediaPropertyInfo = DOMMediaList
+    type AttrLabel DOMStyleSheetMediaPropertyInfo = "DOMStyleSheet::media"
+    attrGet _ = getDOMStyleSheetMedia
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "owner-node"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMStyleSheetOwnerNode :: (MonadIO m, DOMStyleSheetK o) => o -> m DOMNode
+getDOMStyleSheetOwnerNode obj = liftIO $ getObjectPropertyObject obj "owner-node" DOMNode
+
+data DOMStyleSheetOwnerNodePropertyInfo
+instance AttrInfo DOMStyleSheetOwnerNodePropertyInfo where
+    type AttrAllowedOps DOMStyleSheetOwnerNodePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMStyleSheetOwnerNodePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMStyleSheetOwnerNodePropertyInfo = DOMStyleSheetK
+    type AttrGetType DOMStyleSheetOwnerNodePropertyInfo = DOMNode
+    type AttrLabel DOMStyleSheetOwnerNodePropertyInfo = "DOMStyleSheet::owner-node"
+    attrGet _ = getDOMStyleSheetOwnerNode
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "parent-style-sheet"
+   -- Type: TInterface "WebKit2WebExtension" "DOMStyleSheet"
+   -- Flags: [PropertyReadable]
+
+getDOMStyleSheetParentStyleSheet :: (MonadIO m, DOMStyleSheetK o) => o -> m DOMStyleSheet
+getDOMStyleSheetParentStyleSheet obj = liftIO $ getObjectPropertyObject obj "parent-style-sheet" DOMStyleSheet
+
+data DOMStyleSheetParentStyleSheetPropertyInfo
+instance AttrInfo DOMStyleSheetParentStyleSheetPropertyInfo where
+    type AttrAllowedOps DOMStyleSheetParentStyleSheetPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMStyleSheetParentStyleSheetPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMStyleSheetParentStyleSheetPropertyInfo = DOMStyleSheetK
+    type AttrGetType DOMStyleSheetParentStyleSheetPropertyInfo = DOMStyleSheet
+    type AttrLabel DOMStyleSheetParentStyleSheetPropertyInfo = "DOMStyleSheet::parent-style-sheet"
+    attrGet _ = getDOMStyleSheetParentStyleSheet
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "title"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMStyleSheetTitle :: (MonadIO m, DOMStyleSheetK o) => o -> m T.Text
+getDOMStyleSheetTitle obj = liftIO $ getObjectPropertyString obj "title"
+
+data DOMStyleSheetTitlePropertyInfo
+instance AttrInfo DOMStyleSheetTitlePropertyInfo where
+    type AttrAllowedOps DOMStyleSheetTitlePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMStyleSheetTitlePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMStyleSheetTitlePropertyInfo = DOMStyleSheetK
+    type AttrGetType DOMStyleSheetTitlePropertyInfo = T.Text
+    type AttrLabel DOMStyleSheetTitlePropertyInfo = "DOMStyleSheet::title"
+    attrGet _ = getDOMStyleSheetTitle
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMStyleSheetType :: (MonadIO m, DOMStyleSheetK o) => o -> m T.Text
+getDOMStyleSheetType obj = liftIO $ getObjectPropertyString obj "type"
+
+data DOMStyleSheetTypePropertyInfo
+instance AttrInfo DOMStyleSheetTypePropertyInfo where
+    type AttrAllowedOps DOMStyleSheetTypePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMStyleSheetTypePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMStyleSheetTypePropertyInfo = DOMStyleSheetK
+    type AttrGetType DOMStyleSheetTypePropertyInfo = T.Text
+    type AttrLabel DOMStyleSheetTypePropertyInfo = "DOMStyleSheet::type"
+    attrGet _ = getDOMStyleSheetType
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMStyleSheet = DOMStyleSheetAttributeList
+type DOMStyleSheetAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("disabled", DOMStyleSheetDisabledPropertyInfo), '("href", DOMStyleSheetHrefPropertyInfo), '("media", DOMStyleSheetMediaPropertyInfo), '("owner-node", DOMStyleSheetOwnerNodePropertyInfo), '("parent-style-sheet", DOMStyleSheetParentStyleSheetPropertyInfo), '("title", DOMStyleSheetTitlePropertyInfo), '("type", DOMStyleSheetTypePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMStyleSheet = DOMStyleSheetSignalList
+type DOMStyleSheetSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMStyleSheet::get_content_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_style_sheet_get_content_type" webkit_dom_style_sheet_get_content_type :: 
+    Ptr DOMStyleSheet ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMStyleSheet"
+    IO CString
+
+
+dOMStyleSheetGetContentType ::
+    (MonadIO m, DOMStyleSheetK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMStyleSheetGetContentType _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_style_sheet_get_content_type _obj'
+    checkUnexpectedReturnNULL "webkit_dom_style_sheet_get_content_type" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMStyleSheet::get_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_style_sheet_get_disabled" webkit_dom_style_sheet_get_disabled :: 
+    Ptr DOMStyleSheet ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMStyleSheet"
+    IO CInt
+
+
+dOMStyleSheetGetDisabled ::
+    (MonadIO m, DOMStyleSheetK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMStyleSheetGetDisabled _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_style_sheet_get_disabled _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMStyleSheet::get_href
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_style_sheet_get_href" webkit_dom_style_sheet_get_href :: 
+    Ptr DOMStyleSheet ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMStyleSheet"
+    IO CString
+
+
+dOMStyleSheetGetHref ::
+    (MonadIO m, DOMStyleSheetK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMStyleSheetGetHref _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_style_sheet_get_href _obj'
+    checkUnexpectedReturnNULL "webkit_dom_style_sheet_get_href" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMStyleSheet::get_media
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMMediaList"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_style_sheet_get_media" webkit_dom_style_sheet_get_media :: 
+    Ptr DOMStyleSheet ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMStyleSheet"
+    IO (Ptr DOMMediaList)
+
+
+dOMStyleSheetGetMedia ::
+    (MonadIO m, DOMStyleSheetK a) =>
+    a ->                                    -- _obj
+    m DOMMediaList
+dOMStyleSheetGetMedia _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_style_sheet_get_media _obj'
+    checkUnexpectedReturnNULL "webkit_dom_style_sheet_get_media" result
+    result' <- (wrapObject DOMMediaList) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMStyleSheet::get_owner_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_style_sheet_get_owner_node" webkit_dom_style_sheet_get_owner_node :: 
+    Ptr DOMStyleSheet ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMStyleSheet"
+    IO (Ptr DOMNode)
+
+
+dOMStyleSheetGetOwnerNode ::
+    (MonadIO m, DOMStyleSheetK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMStyleSheetGetOwnerNode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_style_sheet_get_owner_node _obj'
+    checkUnexpectedReturnNULL "webkit_dom_style_sheet_get_owner_node" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMStyleSheet::get_parent_style_sheet
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMStyleSheet"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_style_sheet_get_parent_style_sheet" webkit_dom_style_sheet_get_parent_style_sheet :: 
+    Ptr DOMStyleSheet ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMStyleSheet"
+    IO (Ptr DOMStyleSheet)
+
+
+dOMStyleSheetGetParentStyleSheet ::
+    (MonadIO m, DOMStyleSheetK a) =>
+    a ->                                    -- _obj
+    m DOMStyleSheet
+dOMStyleSheetGetParentStyleSheet _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_style_sheet_get_parent_style_sheet _obj'
+    checkUnexpectedReturnNULL "webkit_dom_style_sheet_get_parent_style_sheet" result
+    result' <- (wrapObject DOMStyleSheet) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMStyleSheet::get_title
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_style_sheet_get_title" webkit_dom_style_sheet_get_title :: 
+    Ptr DOMStyleSheet ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMStyleSheet"
+    IO CString
+
+
+dOMStyleSheetGetTitle ::
+    (MonadIO m, DOMStyleSheetK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMStyleSheetGetTitle _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_style_sheet_get_title _obj'
+    checkUnexpectedReturnNULL "webkit_dom_style_sheet_get_title" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMStyleSheet::set_disabled
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheet", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_style_sheet_set_disabled" webkit_dom_style_sheet_set_disabled :: 
+    Ptr DOMStyleSheet ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMStyleSheet"
+    CInt ->                                 -- value : TBasicType TBoolean
+    IO ()
+
+
+dOMStyleSheetSetDisabled ::
+    (MonadIO m, DOMStyleSheetK a) =>
+    a ->                                    -- _obj
+    Bool ->                                 -- value
+    m ()
+dOMStyleSheetSetDisabled _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = (fromIntegral . fromEnum) value
+    webkit_dom_style_sheet_set_disabled _obj' value'
+    touchManagedPtr _obj
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMStyleSheet.hs-boot b/GI/WebKit2WebExtension/Objects/DOMStyleSheet.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMStyleSheet.hs-boot
@@ -0,0 +1,20 @@
+module GI.WebKit2WebExtension.Objects.DOMStyleSheet where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMStyleSheet = DOMStyleSheet (ForeignPtr DOMStyleSheet)
+instance GObject DOMStyleSheet where
+class GObject o => DOMStyleSheetK o
+instance (GObject o, IsDescendantOf DOMStyleSheet o) => DOMStyleSheetK o
+data DOMStyleSheetDisabledPropertyInfo
+data DOMStyleSheetHrefPropertyInfo
+data DOMStyleSheetMediaPropertyInfo
+data DOMStyleSheetOwnerNodePropertyInfo
+data DOMStyleSheetParentStyleSheetPropertyInfo
+data DOMStyleSheetTitlePropertyInfo
+data DOMStyleSheetTypePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMStyleSheetList.hs b/GI/WebKit2WebExtension/Objects/DOMStyleSheetList.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMStyleSheetList.hs
@@ -0,0 +1,147 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMStyleSheetList
+    ( 
+
+-- * Exported types
+    DOMStyleSheetList(..)                   ,
+    DOMStyleSheetListK                      ,
+    toDOMStyleSheetList                     ,
+    noDOMStyleSheetList                     ,
+
+
+ -- * Methods
+-- ** dOMStyleSheetListGetLength
+    dOMStyleSheetListGetLength              ,
+
+
+-- ** dOMStyleSheetListItem
+    dOMStyleSheetListItem                   ,
+
+
+
+
+ -- * Properties
+-- ** Length
+    DOMStyleSheetListLengthPropertyInfo     ,
+    getDOMStyleSheetListLength              ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMStyleSheetList = DOMStyleSheetList (ForeignPtr DOMStyleSheetList)
+foreign import ccall "webkit_dom_style_sheet_list_get_type"
+    c_webkit_dom_style_sheet_list_get_type :: IO GType
+
+type instance ParentTypes DOMStyleSheetList = DOMStyleSheetListParentTypes
+type DOMStyleSheetListParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMStyleSheetList where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_style_sheet_list_get_type
+    
+
+class GObject o => DOMStyleSheetListK o
+instance (GObject o, IsDescendantOf DOMStyleSheetList o) => DOMStyleSheetListK o
+
+toDOMStyleSheetList :: DOMStyleSheetListK o => o -> IO DOMStyleSheetList
+toDOMStyleSheetList = unsafeCastTo DOMStyleSheetList
+
+noDOMStyleSheetList :: Maybe DOMStyleSheetList
+noDOMStyleSheetList = Nothing
+
+-- VVV Prop "length"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMStyleSheetListLength :: (MonadIO m, DOMStyleSheetListK o) => o -> m Word64
+getDOMStyleSheetListLength obj = liftIO $ getObjectPropertyUInt64 obj "length"
+
+data DOMStyleSheetListLengthPropertyInfo
+instance AttrInfo DOMStyleSheetListLengthPropertyInfo where
+    type AttrAllowedOps DOMStyleSheetListLengthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMStyleSheetListLengthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMStyleSheetListLengthPropertyInfo = DOMStyleSheetListK
+    type AttrGetType DOMStyleSheetListLengthPropertyInfo = Word64
+    type AttrLabel DOMStyleSheetListLengthPropertyInfo = "DOMStyleSheetList::length"
+    attrGet _ = getDOMStyleSheetListLength
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMStyleSheetList = DOMStyleSheetListAttributeList
+type DOMStyleSheetListAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("length", DOMStyleSheetListLengthPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMStyleSheetList = DOMStyleSheetListSignalList
+type DOMStyleSheetListSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMStyleSheetList::get_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheetList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheetList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_style_sheet_list_get_length" webkit_dom_style_sheet_list_get_length :: 
+    Ptr DOMStyleSheetList ->                -- _obj : TInterface "WebKit2WebExtension" "DOMStyleSheetList"
+    IO Word64
+
+
+dOMStyleSheetListGetLength ::
+    (MonadIO m, DOMStyleSheetListK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMStyleSheetListGetLength _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_style_sheet_list_get_length _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMStyleSheetList::item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheetList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMStyleSheetList", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMStyleSheet"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_style_sheet_list_item" webkit_dom_style_sheet_list_item :: 
+    Ptr DOMStyleSheetList ->                -- _obj : TInterface "WebKit2WebExtension" "DOMStyleSheetList"
+    Word64 ->                               -- index : TBasicType TUInt64
+    IO (Ptr DOMStyleSheet)
+
+
+dOMStyleSheetListItem ::
+    (MonadIO m, DOMStyleSheetListK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- index
+    m DOMStyleSheet
+dOMStyleSheetListItem _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_style_sheet_list_item _obj' index
+    checkUnexpectedReturnNULL "webkit_dom_style_sheet_list_item" result
+    result' <- (wrapObject DOMStyleSheet) result
+    touchManagedPtr _obj
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMStyleSheetList.hs-boot b/GI/WebKit2WebExtension/Objects/DOMStyleSheetList.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMStyleSheetList.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMStyleSheetList where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMStyleSheetList = DOMStyleSheetList (ForeignPtr DOMStyleSheetList)
+instance GObject DOMStyleSheetList where
+class GObject o => DOMStyleSheetListK o
+instance (GObject o, IsDescendantOf DOMStyleSheetList o) => DOMStyleSheetListK o
+data DOMStyleSheetListLengthPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMText.hs b/GI/WebKit2WebExtension/Objects/DOMText.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMText.hs
@@ -0,0 +1,194 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMText
+    ( 
+
+-- * Exported types
+    DOMText(..)                             ,
+    DOMTextK                                ,
+    toDOMText                               ,
+    noDOMText                               ,
+
+
+ -- * Methods
+-- ** dOMTextGetWholeText
+    dOMTextGetWholeText                     ,
+
+
+-- ** dOMTextReplaceWholeText
+    dOMTextReplaceWholeText                 ,
+
+
+-- ** dOMTextSplitText
+    dOMTextSplitText                        ,
+
+
+
+
+ -- * Properties
+-- ** WholeText
+    DOMTextWholeTextPropertyInfo            ,
+    getDOMTextWholeText                     ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMText = DOMText (ForeignPtr DOMText)
+foreign import ccall "webkit_dom_text_get_type"
+    c_webkit_dom_text_get_type :: IO GType
+
+type instance ParentTypes DOMText = DOMTextParentTypes
+type DOMTextParentTypes = '[DOMCharacterData, DOMNode, DOMObject, GObject.Object, DOMEventTarget]
+
+instance GObject DOMText where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_text_get_type
+    
+
+class GObject o => DOMTextK o
+instance (GObject o, IsDescendantOf DOMText o) => DOMTextK o
+
+toDOMText :: DOMTextK o => o -> IO DOMText
+toDOMText = unsafeCastTo DOMText
+
+noDOMText :: Maybe DOMText
+noDOMText = Nothing
+
+-- VVV Prop "whole-text"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMTextWholeText :: (MonadIO m, DOMTextK o) => o -> m T.Text
+getDOMTextWholeText obj = liftIO $ getObjectPropertyString obj "whole-text"
+
+data DOMTextWholeTextPropertyInfo
+instance AttrInfo DOMTextWholeTextPropertyInfo where
+    type AttrAllowedOps DOMTextWholeTextPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMTextWholeTextPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMTextWholeTextPropertyInfo = DOMTextK
+    type AttrGetType DOMTextWholeTextPropertyInfo = T.Text
+    type AttrLabel DOMTextWholeTextPropertyInfo = "DOMText::whole-text"
+    attrGet _ = getDOMTextWholeText
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMText = DOMTextAttributeList
+type DOMTextAttributeList = ('[ '("base-uri", DOMNodeBaseUriPropertyInfo), '("child-nodes", DOMNodeChildNodesPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("data", DOMCharacterDataDataPropertyInfo), '("first-child", DOMNodeFirstChildPropertyInfo), '("last-child", DOMNodeLastChildPropertyInfo), '("length", DOMCharacterDataLengthPropertyInfo), '("local-name", DOMNodeLocalNamePropertyInfo), '("namespace-uri", DOMNodeNamespaceUriPropertyInfo), '("next-sibling", DOMNodeNextSiblingPropertyInfo), '("node-name", DOMNodeNodeNamePropertyInfo), '("node-type", DOMNodeNodeTypePropertyInfo), '("node-value", DOMNodeNodeValuePropertyInfo), '("owner-document", DOMNodeOwnerDocumentPropertyInfo), '("parent-element", DOMNodeParentElementPropertyInfo), '("parent-node", DOMNodeParentNodePropertyInfo), '("prefix", DOMNodePrefixPropertyInfo), '("previous-sibling", DOMNodePreviousSiblingPropertyInfo), '("text-content", DOMNodeTextContentPropertyInfo), '("whole-text", DOMTextWholeTextPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMText = DOMTextSignalList
+type DOMTextSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMText::get_whole_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_text_get_whole_text" webkit_dom_text_get_whole_text :: 
+    Ptr DOMText ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMText"
+    IO CString
+
+
+dOMTextGetWholeText ::
+    (MonadIO m, DOMTextK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMTextGetWholeText _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_text_get_whole_text _obj'
+    checkUnexpectedReturnNULL "webkit_dom_text_get_whole_text" result
+    result' <- cstringToText result
+    freeMem result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMText::replace_whole_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "content", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "content", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMText"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_text_replace_whole_text" webkit_dom_text_replace_whole_text :: 
+    Ptr DOMText ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMText"
+    CString ->                              -- content : TBasicType TUTF8
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMText)
+
+
+dOMTextReplaceWholeText ::
+    (MonadIO m, DOMTextK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- content
+    m DOMText
+dOMTextReplaceWholeText _obj content = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    content' <- textToCString content
+    onException (do
+        result <- propagateGError $ webkit_dom_text_replace_whole_text _obj' content'
+        checkUnexpectedReturnNULL "webkit_dom_text_replace_whole_text" result
+        result' <- (newObject DOMText) result
+        touchManagedPtr _obj
+        freeMem content'
+        return result'
+     ) (do
+        freeMem content'
+     )
+
+-- method DOMText::split_text
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMText", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "offset", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMText"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_text_split_text" webkit_dom_text_split_text :: 
+    Ptr DOMText ->                          -- _obj : TInterface "WebKit2WebExtension" "DOMText"
+    Word64 ->                               -- offset : TBasicType TUInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMText)
+
+
+dOMTextSplitText ::
+    (MonadIO m, DOMTextK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- offset
+    m DOMText
+dOMTextSplitText _obj offset = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_text_split_text _obj' offset
+        checkUnexpectedReturnNULL "webkit_dom_text_split_text" result
+        result' <- (newObject DOMText) result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMText.hs-boot b/GI/WebKit2WebExtension/Objects/DOMText.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMText.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.DOMText where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMText = DOMText (ForeignPtr DOMText)
+instance GObject DOMText where
+class GObject o => DOMTextK o
+instance (GObject o, IsDescendantOf DOMText o) => DOMTextK o
+data DOMTextWholeTextPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMTreeWalker.hs b/GI/WebKit2WebExtension/Objects/DOMTreeWalker.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMTreeWalker.hs
@@ -0,0 +1,573 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMTreeWalker
+    ( 
+
+-- * Exported types
+    DOMTreeWalker(..)                       ,
+    DOMTreeWalkerK                          ,
+    toDOMTreeWalker                         ,
+    noDOMTreeWalker                         ,
+
+
+ -- * Methods
+-- ** dOMTreeWalkerFirstChild
+    dOMTreeWalkerFirstChild                 ,
+
+
+-- ** dOMTreeWalkerGetCurrentNode
+    dOMTreeWalkerGetCurrentNode             ,
+
+
+-- ** dOMTreeWalkerGetExpandEntityReferences
+    dOMTreeWalkerGetExpandEntityReferences  ,
+
+
+-- ** dOMTreeWalkerGetFilter
+    dOMTreeWalkerGetFilter                  ,
+
+
+-- ** dOMTreeWalkerGetRoot
+    dOMTreeWalkerGetRoot                    ,
+
+
+-- ** dOMTreeWalkerGetWhatToShow
+    dOMTreeWalkerGetWhatToShow              ,
+
+
+-- ** dOMTreeWalkerLastChild
+    dOMTreeWalkerLastChild                  ,
+
+
+-- ** dOMTreeWalkerNextNode
+    dOMTreeWalkerNextNode                   ,
+
+
+-- ** dOMTreeWalkerNextSibling
+    dOMTreeWalkerNextSibling                ,
+
+
+-- ** dOMTreeWalkerParentNode
+    dOMTreeWalkerParentNode                 ,
+
+
+-- ** dOMTreeWalkerPreviousNode
+    dOMTreeWalkerPreviousNode               ,
+
+
+-- ** dOMTreeWalkerPreviousSibling
+    dOMTreeWalkerPreviousSibling            ,
+
+
+-- ** dOMTreeWalkerSetCurrentNode
+    dOMTreeWalkerSetCurrentNode             ,
+
+
+
+
+ -- * Properties
+-- ** CurrentNode
+    DOMTreeWalkerCurrentNodePropertyInfo    ,
+    getDOMTreeWalkerCurrentNode             ,
+
+
+-- ** ExpandEntityReferences
+    DOMTreeWalkerExpandEntityReferencesPropertyInfo,
+    getDOMTreeWalkerExpandEntityReferences  ,
+
+
+-- ** Filter
+    DOMTreeWalkerFilterPropertyInfo         ,
+    getDOMTreeWalkerFilter                  ,
+
+
+-- ** Root
+    DOMTreeWalkerRootPropertyInfo           ,
+    getDOMTreeWalkerRoot                    ,
+
+
+-- ** WhatToShow
+    DOMTreeWalkerWhatToShowPropertyInfo     ,
+    getDOMTreeWalkerWhatToShow              ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMTreeWalker = DOMTreeWalker (ForeignPtr DOMTreeWalker)
+foreign import ccall "webkit_dom_tree_walker_get_type"
+    c_webkit_dom_tree_walker_get_type :: IO GType
+
+type instance ParentTypes DOMTreeWalker = DOMTreeWalkerParentTypes
+type DOMTreeWalkerParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMTreeWalker where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_tree_walker_get_type
+    
+
+class GObject o => DOMTreeWalkerK o
+instance (GObject o, IsDescendantOf DOMTreeWalker o) => DOMTreeWalkerK o
+
+toDOMTreeWalker :: DOMTreeWalkerK o => o -> IO DOMTreeWalker
+toDOMTreeWalker = unsafeCastTo DOMTreeWalker
+
+noDOMTreeWalker :: Maybe DOMTreeWalker
+noDOMTreeWalker = Nothing
+
+-- VVV Prop "current-node"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMTreeWalkerCurrentNode :: (MonadIO m, DOMTreeWalkerK o) => o -> m DOMNode
+getDOMTreeWalkerCurrentNode obj = liftIO $ getObjectPropertyObject obj "current-node" DOMNode
+
+data DOMTreeWalkerCurrentNodePropertyInfo
+instance AttrInfo DOMTreeWalkerCurrentNodePropertyInfo where
+    type AttrAllowedOps DOMTreeWalkerCurrentNodePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMTreeWalkerCurrentNodePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMTreeWalkerCurrentNodePropertyInfo = DOMTreeWalkerK
+    type AttrGetType DOMTreeWalkerCurrentNodePropertyInfo = DOMNode
+    type AttrLabel DOMTreeWalkerCurrentNodePropertyInfo = "DOMTreeWalker::current-node"
+    attrGet _ = getDOMTreeWalkerCurrentNode
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "expand-entity-references"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMTreeWalkerExpandEntityReferences :: (MonadIO m, DOMTreeWalkerK o) => o -> m Bool
+getDOMTreeWalkerExpandEntityReferences obj = liftIO $ getObjectPropertyBool obj "expand-entity-references"
+
+data DOMTreeWalkerExpandEntityReferencesPropertyInfo
+instance AttrInfo DOMTreeWalkerExpandEntityReferencesPropertyInfo where
+    type AttrAllowedOps DOMTreeWalkerExpandEntityReferencesPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMTreeWalkerExpandEntityReferencesPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMTreeWalkerExpandEntityReferencesPropertyInfo = DOMTreeWalkerK
+    type AttrGetType DOMTreeWalkerExpandEntityReferencesPropertyInfo = Bool
+    type AttrLabel DOMTreeWalkerExpandEntityReferencesPropertyInfo = "DOMTreeWalker::expand-entity-references"
+    attrGet _ = getDOMTreeWalkerExpandEntityReferences
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "filter"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNodeFilter"
+   -- Flags: [PropertyReadable]
+
+getDOMTreeWalkerFilter :: (MonadIO m, DOMTreeWalkerK o) => o -> m DOMNodeFilter
+getDOMTreeWalkerFilter obj = liftIO $ getObjectPropertyObject obj "filter" DOMNodeFilter
+
+data DOMTreeWalkerFilterPropertyInfo
+instance AttrInfo DOMTreeWalkerFilterPropertyInfo where
+    type AttrAllowedOps DOMTreeWalkerFilterPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMTreeWalkerFilterPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMTreeWalkerFilterPropertyInfo = DOMTreeWalkerK
+    type AttrGetType DOMTreeWalkerFilterPropertyInfo = DOMNodeFilter
+    type AttrLabel DOMTreeWalkerFilterPropertyInfo = "DOMTreeWalker::filter"
+    attrGet _ = getDOMTreeWalkerFilter
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "root"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMTreeWalkerRoot :: (MonadIO m, DOMTreeWalkerK o) => o -> m DOMNode
+getDOMTreeWalkerRoot obj = liftIO $ getObjectPropertyObject obj "root" DOMNode
+
+data DOMTreeWalkerRootPropertyInfo
+instance AttrInfo DOMTreeWalkerRootPropertyInfo where
+    type AttrAllowedOps DOMTreeWalkerRootPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMTreeWalkerRootPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMTreeWalkerRootPropertyInfo = DOMTreeWalkerK
+    type AttrGetType DOMTreeWalkerRootPropertyInfo = DOMNode
+    type AttrLabel DOMTreeWalkerRootPropertyInfo = "DOMTreeWalker::root"
+    attrGet _ = getDOMTreeWalkerRoot
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "what-to-show"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMTreeWalkerWhatToShow :: (MonadIO m, DOMTreeWalkerK o) => o -> m Word64
+getDOMTreeWalkerWhatToShow obj = liftIO $ getObjectPropertyUInt64 obj "what-to-show"
+
+data DOMTreeWalkerWhatToShowPropertyInfo
+instance AttrInfo DOMTreeWalkerWhatToShowPropertyInfo where
+    type AttrAllowedOps DOMTreeWalkerWhatToShowPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMTreeWalkerWhatToShowPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMTreeWalkerWhatToShowPropertyInfo = DOMTreeWalkerK
+    type AttrGetType DOMTreeWalkerWhatToShowPropertyInfo = Word64
+    type AttrLabel DOMTreeWalkerWhatToShowPropertyInfo = "DOMTreeWalker::what-to-show"
+    attrGet _ = getDOMTreeWalkerWhatToShow
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMTreeWalker = DOMTreeWalkerAttributeList
+type DOMTreeWalkerAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo), '("current-node", DOMTreeWalkerCurrentNodePropertyInfo), '("expand-entity-references", DOMTreeWalkerExpandEntityReferencesPropertyInfo), '("filter", DOMTreeWalkerFilterPropertyInfo), '("root", DOMTreeWalkerRootPropertyInfo), '("what-to-show", DOMTreeWalkerWhatToShowPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMTreeWalker = DOMTreeWalkerSignalList
+type DOMTreeWalkerSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMTreeWalker::first_child
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_tree_walker_first_child" webkit_dom_tree_walker_first_child :: 
+    Ptr DOMTreeWalker ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMTreeWalker"
+    IO (Ptr DOMNode)
+
+
+dOMTreeWalkerFirstChild ::
+    (MonadIO m, DOMTreeWalkerK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMTreeWalkerFirstChild _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_tree_walker_first_child _obj'
+    checkUnexpectedReturnNULL "webkit_dom_tree_walker_first_child" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMTreeWalker::get_current_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_tree_walker_get_current_node" webkit_dom_tree_walker_get_current_node :: 
+    Ptr DOMTreeWalker ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMTreeWalker"
+    IO (Ptr DOMNode)
+
+
+dOMTreeWalkerGetCurrentNode ::
+    (MonadIO m, DOMTreeWalkerK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMTreeWalkerGetCurrentNode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_tree_walker_get_current_node _obj'
+    checkUnexpectedReturnNULL "webkit_dom_tree_walker_get_current_node" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMTreeWalker::get_expand_entity_references
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_tree_walker_get_expand_entity_references" webkit_dom_tree_walker_get_expand_entity_references :: 
+    Ptr DOMTreeWalker ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMTreeWalker"
+    IO CInt
+
+
+dOMTreeWalkerGetExpandEntityReferences ::
+    (MonadIO m, DOMTreeWalkerK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMTreeWalkerGetExpandEntityReferences _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_tree_walker_get_expand_entity_references _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMTreeWalker::get_filter
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNodeFilter"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_tree_walker_get_filter" webkit_dom_tree_walker_get_filter :: 
+    Ptr DOMTreeWalker ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMTreeWalker"
+    IO (Ptr DOMNodeFilter)
+
+
+dOMTreeWalkerGetFilter ::
+    (MonadIO m, DOMTreeWalkerK a) =>
+    a ->                                    -- _obj
+    m DOMNodeFilter
+dOMTreeWalkerGetFilter _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_tree_walker_get_filter _obj'
+    checkUnexpectedReturnNULL "webkit_dom_tree_walker_get_filter" result
+    result' <- (wrapObject DOMNodeFilter) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMTreeWalker::get_root
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_tree_walker_get_root" webkit_dom_tree_walker_get_root :: 
+    Ptr DOMTreeWalker ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMTreeWalker"
+    IO (Ptr DOMNode)
+
+
+dOMTreeWalkerGetRoot ::
+    (MonadIO m, DOMTreeWalkerK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMTreeWalkerGetRoot _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_tree_walker_get_root _obj'
+    checkUnexpectedReturnNULL "webkit_dom_tree_walker_get_root" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMTreeWalker::get_what_to_show
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_tree_walker_get_what_to_show" webkit_dom_tree_walker_get_what_to_show :: 
+    Ptr DOMTreeWalker ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMTreeWalker"
+    IO Word64
+
+
+dOMTreeWalkerGetWhatToShow ::
+    (MonadIO m, DOMTreeWalkerK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMTreeWalkerGetWhatToShow _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_tree_walker_get_what_to_show _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMTreeWalker::last_child
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_tree_walker_last_child" webkit_dom_tree_walker_last_child :: 
+    Ptr DOMTreeWalker ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMTreeWalker"
+    IO (Ptr DOMNode)
+
+
+dOMTreeWalkerLastChild ::
+    (MonadIO m, DOMTreeWalkerK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMTreeWalkerLastChild _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_tree_walker_last_child _obj'
+    checkUnexpectedReturnNULL "webkit_dom_tree_walker_last_child" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMTreeWalker::next_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_tree_walker_next_node" webkit_dom_tree_walker_next_node :: 
+    Ptr DOMTreeWalker ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMTreeWalker"
+    IO (Ptr DOMNode)
+
+
+dOMTreeWalkerNextNode ::
+    (MonadIO m, DOMTreeWalkerK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMTreeWalkerNextNode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_tree_walker_next_node _obj'
+    checkUnexpectedReturnNULL "webkit_dom_tree_walker_next_node" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMTreeWalker::next_sibling
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_tree_walker_next_sibling" webkit_dom_tree_walker_next_sibling :: 
+    Ptr DOMTreeWalker ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMTreeWalker"
+    IO (Ptr DOMNode)
+
+
+dOMTreeWalkerNextSibling ::
+    (MonadIO m, DOMTreeWalkerK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMTreeWalkerNextSibling _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_tree_walker_next_sibling _obj'
+    checkUnexpectedReturnNULL "webkit_dom_tree_walker_next_sibling" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMTreeWalker::parent_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_tree_walker_parent_node" webkit_dom_tree_walker_parent_node :: 
+    Ptr DOMTreeWalker ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMTreeWalker"
+    IO (Ptr DOMNode)
+
+
+dOMTreeWalkerParentNode ::
+    (MonadIO m, DOMTreeWalkerK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMTreeWalkerParentNode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_tree_walker_parent_node _obj'
+    checkUnexpectedReturnNULL "webkit_dom_tree_walker_parent_node" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMTreeWalker::previous_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_tree_walker_previous_node" webkit_dom_tree_walker_previous_node :: 
+    Ptr DOMTreeWalker ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMTreeWalker"
+    IO (Ptr DOMNode)
+
+
+dOMTreeWalkerPreviousNode ::
+    (MonadIO m, DOMTreeWalkerK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMTreeWalkerPreviousNode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_tree_walker_previous_node _obj'
+    checkUnexpectedReturnNULL "webkit_dom_tree_walker_previous_node" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMTreeWalker::previous_sibling
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_tree_walker_previous_sibling" webkit_dom_tree_walker_previous_sibling :: 
+    Ptr DOMTreeWalker ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMTreeWalker"
+    IO (Ptr DOMNode)
+
+
+dOMTreeWalkerPreviousSibling ::
+    (MonadIO m, DOMTreeWalkerK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMTreeWalkerPreviousSibling _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_tree_walker_previous_sibling _obj'
+    checkUnexpectedReturnNULL "webkit_dom_tree_walker_previous_sibling" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMTreeWalker::set_current_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMTreeWalker", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "value", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_tree_walker_set_current_node" webkit_dom_tree_walker_set_current_node :: 
+    Ptr DOMTreeWalker ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMTreeWalker"
+    Ptr DOMNode ->                          -- value : TInterface "WebKit2WebExtension" "DOMNode"
+    Ptr (Ptr GError) ->                     -- error
+    IO ()
+
+
+dOMTreeWalkerSetCurrentNode ::
+    (MonadIO m, DOMTreeWalkerK a, DOMNodeK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- value
+    m ()
+dOMTreeWalkerSetCurrentNode _obj value = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let value' = unsafeManagedPtrCastPtr value
+    onException (do
+        propagateGError $ webkit_dom_tree_walker_set_current_node _obj' value'
+        touchManagedPtr _obj
+        touchManagedPtr value
+        return ()
+     ) (do
+        return ()
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMTreeWalker.hs-boot b/GI/WebKit2WebExtension/Objects/DOMTreeWalker.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMTreeWalker.hs-boot
@@ -0,0 +1,18 @@
+module GI.WebKit2WebExtension.Objects.DOMTreeWalker where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMTreeWalker = DOMTreeWalker (ForeignPtr DOMTreeWalker)
+instance GObject DOMTreeWalker where
+class GObject o => DOMTreeWalkerK o
+instance (GObject o, IsDescendantOf DOMTreeWalker o) => DOMTreeWalkerK o
+data DOMTreeWalkerCurrentNodePropertyInfo
+data DOMTreeWalkerExpandEntityReferencesPropertyInfo
+data DOMTreeWalkerFilterPropertyInfo
+data DOMTreeWalkerRootPropertyInfo
+data DOMTreeWalkerWhatToShowPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMUIEvent.hs b/GI/WebKit2WebExtension/Objects/DOMUIEvent.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMUIEvent.hs
@@ -0,0 +1,541 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMUIEvent
+    ( 
+
+-- * Exported types
+    DOMUIEvent(..)                          ,
+    DOMUIEventK                             ,
+    toDOMUIEvent                            ,
+    noDOMUIEvent                            ,
+
+
+ -- * Methods
+-- ** dOMUIEventGetCharCode
+    dOMUIEventGetCharCode                   ,
+
+
+-- ** dOMUIEventGetDetail
+    dOMUIEventGetDetail                     ,
+
+
+-- ** dOMUIEventGetKeyCode
+    dOMUIEventGetKeyCode                    ,
+
+
+-- ** dOMUIEventGetLayerX
+    dOMUIEventGetLayerX                     ,
+
+
+-- ** dOMUIEventGetLayerY
+    dOMUIEventGetLayerY                     ,
+
+
+-- ** dOMUIEventGetPageX
+    dOMUIEventGetPageX                      ,
+
+
+-- ** dOMUIEventGetPageY
+    dOMUIEventGetPageY                      ,
+
+
+-- ** dOMUIEventGetView
+    dOMUIEventGetView                       ,
+
+
+-- ** dOMUIEventInitUiEvent
+    dOMUIEventInitUiEvent                   ,
+
+
+
+
+ -- * Properties
+-- ** CharCode
+    DOMUIEventCharCodePropertyInfo          ,
+    getDOMUIEventCharCode                   ,
+
+
+-- ** Detail
+    DOMUIEventDetailPropertyInfo            ,
+    getDOMUIEventDetail                     ,
+
+
+-- ** KeyCode
+    DOMUIEventKeyCodePropertyInfo           ,
+    getDOMUIEventKeyCode                    ,
+
+
+-- ** LayerX
+    DOMUIEventLayerXPropertyInfo            ,
+    getDOMUIEventLayerX                     ,
+
+
+-- ** LayerY
+    DOMUIEventLayerYPropertyInfo            ,
+    getDOMUIEventLayerY                     ,
+
+
+-- ** PageX
+    DOMUIEventPageXPropertyInfo             ,
+    getDOMUIEventPageX                      ,
+
+
+-- ** PageY
+    DOMUIEventPageYPropertyInfo             ,
+    getDOMUIEventPageY                      ,
+
+
+-- ** View
+    DOMUIEventViewPropertyInfo              ,
+    getDOMUIEventView                       ,
+
+
+-- ** Which
+    DOMUIEventWhichPropertyInfo             ,
+    getDOMUIEventWhich                      ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMUIEvent = DOMUIEvent (ForeignPtr DOMUIEvent)
+foreign import ccall "webkit_dom_ui_event_get_type"
+    c_webkit_dom_ui_event_get_type :: IO GType
+
+type instance ParentTypes DOMUIEvent = DOMUIEventParentTypes
+type DOMUIEventParentTypes = '[DOMEvent, DOMObject, GObject.Object]
+
+instance GObject DOMUIEvent where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_ui_event_get_type
+    
+
+class GObject o => DOMUIEventK o
+instance (GObject o, IsDescendantOf DOMUIEvent o) => DOMUIEventK o
+
+toDOMUIEvent :: DOMUIEventK o => o -> IO DOMUIEvent
+toDOMUIEvent = unsafeCastTo DOMUIEvent
+
+noDOMUIEvent :: Maybe DOMUIEvent
+noDOMUIEvent = Nothing
+
+-- VVV Prop "char-code"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMUIEventCharCode :: (MonadIO m, DOMUIEventK o) => o -> m Int64
+getDOMUIEventCharCode obj = liftIO $ getObjectPropertyInt64 obj "char-code"
+
+data DOMUIEventCharCodePropertyInfo
+instance AttrInfo DOMUIEventCharCodePropertyInfo where
+    type AttrAllowedOps DOMUIEventCharCodePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMUIEventCharCodePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMUIEventCharCodePropertyInfo = DOMUIEventK
+    type AttrGetType DOMUIEventCharCodePropertyInfo = Int64
+    type AttrLabel DOMUIEventCharCodePropertyInfo = "DOMUIEvent::char-code"
+    attrGet _ = getDOMUIEventCharCode
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "detail"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMUIEventDetail :: (MonadIO m, DOMUIEventK o) => o -> m Int64
+getDOMUIEventDetail obj = liftIO $ getObjectPropertyInt64 obj "detail"
+
+data DOMUIEventDetailPropertyInfo
+instance AttrInfo DOMUIEventDetailPropertyInfo where
+    type AttrAllowedOps DOMUIEventDetailPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMUIEventDetailPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMUIEventDetailPropertyInfo = DOMUIEventK
+    type AttrGetType DOMUIEventDetailPropertyInfo = Int64
+    type AttrLabel DOMUIEventDetailPropertyInfo = "DOMUIEvent::detail"
+    attrGet _ = getDOMUIEventDetail
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "key-code"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMUIEventKeyCode :: (MonadIO m, DOMUIEventK o) => o -> m Int64
+getDOMUIEventKeyCode obj = liftIO $ getObjectPropertyInt64 obj "key-code"
+
+data DOMUIEventKeyCodePropertyInfo
+instance AttrInfo DOMUIEventKeyCodePropertyInfo where
+    type AttrAllowedOps DOMUIEventKeyCodePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMUIEventKeyCodePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMUIEventKeyCodePropertyInfo = DOMUIEventK
+    type AttrGetType DOMUIEventKeyCodePropertyInfo = Int64
+    type AttrLabel DOMUIEventKeyCodePropertyInfo = "DOMUIEvent::key-code"
+    attrGet _ = getDOMUIEventKeyCode
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "layer-x"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMUIEventLayerX :: (MonadIO m, DOMUIEventK o) => o -> m Int64
+getDOMUIEventLayerX obj = liftIO $ getObjectPropertyInt64 obj "layer-x"
+
+data DOMUIEventLayerXPropertyInfo
+instance AttrInfo DOMUIEventLayerXPropertyInfo where
+    type AttrAllowedOps DOMUIEventLayerXPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMUIEventLayerXPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMUIEventLayerXPropertyInfo = DOMUIEventK
+    type AttrGetType DOMUIEventLayerXPropertyInfo = Int64
+    type AttrLabel DOMUIEventLayerXPropertyInfo = "DOMUIEvent::layer-x"
+    attrGet _ = getDOMUIEventLayerX
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "layer-y"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMUIEventLayerY :: (MonadIO m, DOMUIEventK o) => o -> m Int64
+getDOMUIEventLayerY obj = liftIO $ getObjectPropertyInt64 obj "layer-y"
+
+data DOMUIEventLayerYPropertyInfo
+instance AttrInfo DOMUIEventLayerYPropertyInfo where
+    type AttrAllowedOps DOMUIEventLayerYPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMUIEventLayerYPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMUIEventLayerYPropertyInfo = DOMUIEventK
+    type AttrGetType DOMUIEventLayerYPropertyInfo = Int64
+    type AttrLabel DOMUIEventLayerYPropertyInfo = "DOMUIEvent::layer-y"
+    attrGet _ = getDOMUIEventLayerY
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "page-x"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMUIEventPageX :: (MonadIO m, DOMUIEventK o) => o -> m Int64
+getDOMUIEventPageX obj = liftIO $ getObjectPropertyInt64 obj "page-x"
+
+data DOMUIEventPageXPropertyInfo
+instance AttrInfo DOMUIEventPageXPropertyInfo where
+    type AttrAllowedOps DOMUIEventPageXPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMUIEventPageXPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMUIEventPageXPropertyInfo = DOMUIEventK
+    type AttrGetType DOMUIEventPageXPropertyInfo = Int64
+    type AttrLabel DOMUIEventPageXPropertyInfo = "DOMUIEvent::page-x"
+    attrGet _ = getDOMUIEventPageX
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "page-y"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMUIEventPageY :: (MonadIO m, DOMUIEventK o) => o -> m Int64
+getDOMUIEventPageY obj = liftIO $ getObjectPropertyInt64 obj "page-y"
+
+data DOMUIEventPageYPropertyInfo
+instance AttrInfo DOMUIEventPageYPropertyInfo where
+    type AttrAllowedOps DOMUIEventPageYPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMUIEventPageYPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMUIEventPageYPropertyInfo = DOMUIEventK
+    type AttrGetType DOMUIEventPageYPropertyInfo = Int64
+    type AttrLabel DOMUIEventPageYPropertyInfo = "DOMUIEvent::page-y"
+    attrGet _ = getDOMUIEventPageY
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "view"
+   -- Type: TInterface "WebKit2WebExtension" "DOMDOMWindow"
+   -- Flags: [PropertyReadable]
+
+getDOMUIEventView :: (MonadIO m, DOMUIEventK o) => o -> m DOMDOMWindow
+getDOMUIEventView obj = liftIO $ getObjectPropertyObject obj "view" DOMDOMWindow
+
+data DOMUIEventViewPropertyInfo
+instance AttrInfo DOMUIEventViewPropertyInfo where
+    type AttrAllowedOps DOMUIEventViewPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMUIEventViewPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMUIEventViewPropertyInfo = DOMUIEventK
+    type AttrGetType DOMUIEventViewPropertyInfo = DOMDOMWindow
+    type AttrLabel DOMUIEventViewPropertyInfo = "DOMUIEvent::view"
+    attrGet _ = getDOMUIEventView
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "which"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMUIEventWhich :: (MonadIO m, DOMUIEventK o) => o -> m Int64
+getDOMUIEventWhich obj = liftIO $ getObjectPropertyInt64 obj "which"
+
+data DOMUIEventWhichPropertyInfo
+instance AttrInfo DOMUIEventWhichPropertyInfo where
+    type AttrAllowedOps DOMUIEventWhichPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMUIEventWhichPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMUIEventWhichPropertyInfo = DOMUIEventK
+    type AttrGetType DOMUIEventWhichPropertyInfo = Int64
+    type AttrLabel DOMUIEventWhichPropertyInfo = "DOMUIEvent::which"
+    attrGet _ = getDOMUIEventWhich
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMUIEvent = DOMUIEventAttributeList
+type DOMUIEventAttributeList = ('[ '("bubbles", DOMEventBubblesPropertyInfo), '("cancel-bubble", DOMEventCancelBubblePropertyInfo), '("cancelable", DOMEventCancelablePropertyInfo), '("char-code", DOMUIEventCharCodePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("current-target", DOMEventCurrentTargetPropertyInfo), '("default-prevented", DOMEventDefaultPreventedPropertyInfo), '("detail", DOMUIEventDetailPropertyInfo), '("event-phase", DOMEventEventPhasePropertyInfo), '("key-code", DOMUIEventKeyCodePropertyInfo), '("layer-x", DOMUIEventLayerXPropertyInfo), '("layer-y", DOMUIEventLayerYPropertyInfo), '("page-x", DOMUIEventPageXPropertyInfo), '("page-y", DOMUIEventPageYPropertyInfo), '("return-value", DOMEventReturnValuePropertyInfo), '("src-element", DOMEventSrcElementPropertyInfo), '("target", DOMEventTargetPropertyInfo), '("time-stamp", DOMEventTimeStampPropertyInfo), '("type", DOMEventTypePropertyInfo), '("view", DOMUIEventViewPropertyInfo), '("which", DOMUIEventWhichPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMUIEvent = DOMUIEventSignalList
+type DOMUIEventSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMUIEvent::get_char_code
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_ui_event_get_char_code" webkit_dom_ui_event_get_char_code :: 
+    Ptr DOMUIEvent ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMUIEvent"
+    IO Int64
+
+
+dOMUIEventGetCharCode ::
+    (MonadIO m, DOMUIEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMUIEventGetCharCode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_ui_event_get_char_code _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMUIEvent::get_detail
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_ui_event_get_detail" webkit_dom_ui_event_get_detail :: 
+    Ptr DOMUIEvent ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMUIEvent"
+    IO Int64
+
+
+dOMUIEventGetDetail ::
+    (MonadIO m, DOMUIEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMUIEventGetDetail _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_ui_event_get_detail _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMUIEvent::get_key_code
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_ui_event_get_key_code" webkit_dom_ui_event_get_key_code :: 
+    Ptr DOMUIEvent ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMUIEvent"
+    IO Int64
+
+
+dOMUIEventGetKeyCode ::
+    (MonadIO m, DOMUIEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMUIEventGetKeyCode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_ui_event_get_key_code _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMUIEvent::get_layer_x
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_ui_event_get_layer_x" webkit_dom_ui_event_get_layer_x :: 
+    Ptr DOMUIEvent ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMUIEvent"
+    IO Int64
+
+
+dOMUIEventGetLayerX ::
+    (MonadIO m, DOMUIEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMUIEventGetLayerX _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_ui_event_get_layer_x _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMUIEvent::get_layer_y
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_ui_event_get_layer_y" webkit_dom_ui_event_get_layer_y :: 
+    Ptr DOMUIEvent ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMUIEvent"
+    IO Int64
+
+
+dOMUIEventGetLayerY ::
+    (MonadIO m, DOMUIEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMUIEventGetLayerY _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_ui_event_get_layer_y _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMUIEvent::get_page_x
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_ui_event_get_page_x" webkit_dom_ui_event_get_page_x :: 
+    Ptr DOMUIEvent ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMUIEvent"
+    IO Int64
+
+
+dOMUIEventGetPageX ::
+    (MonadIO m, DOMUIEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMUIEventGetPageX _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_ui_event_get_page_x _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMUIEvent::get_page_y
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_ui_event_get_page_y" webkit_dom_ui_event_get_page_y :: 
+    Ptr DOMUIEvent ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMUIEvent"
+    IO Int64
+
+
+dOMUIEventGetPageY ::
+    (MonadIO m, DOMUIEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMUIEventGetPageY _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_ui_event_get_page_y _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMUIEvent::get_view
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDOMWindow"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_ui_event_get_view" webkit_dom_ui_event_get_view :: 
+    Ptr DOMUIEvent ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMUIEvent"
+    IO (Ptr DOMDOMWindow)
+
+
+dOMUIEventGetView ::
+    (MonadIO m, DOMUIEventK a) =>
+    a ->                                    -- _obj
+    m DOMDOMWindow
+dOMUIEventGetView _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_ui_event_get_view _obj'
+    checkUnexpectedReturnNULL "webkit_dom_ui_event_get_view" result
+    result' <- (wrapObject DOMDOMWindow) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMUIEvent::init_ui_event
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "type", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "canBubble", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancelable", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "view", argType = TInterface "WebKit2WebExtension" "DOMDOMWindow", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "detail", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMUIEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "type", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "canBubble", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "cancelable", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "view", argType = TInterface "WebKit2WebExtension" "DOMDOMWindow", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "detail", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_ui_event_init_ui_event" webkit_dom_ui_event_init_ui_event :: 
+    Ptr DOMUIEvent ->                       -- _obj : TInterface "WebKit2WebExtension" "DOMUIEvent"
+    CString ->                              -- type : TBasicType TUTF8
+    CInt ->                                 -- canBubble : TBasicType TBoolean
+    CInt ->                                 -- cancelable : TBasicType TBoolean
+    Ptr DOMDOMWindow ->                     -- view : TInterface "WebKit2WebExtension" "DOMDOMWindow"
+    Int64 ->                                -- detail : TBasicType TInt64
+    IO ()
+
+
+dOMUIEventInitUiEvent ::
+    (MonadIO m, DOMUIEventK a, DOMDOMWindowK b) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- type
+    Bool ->                                 -- canBubble
+    Bool ->                                 -- cancelable
+    b ->                                    -- view
+    Int64 ->                                -- detail
+    m ()
+dOMUIEventInitUiEvent _obj type_ canBubble cancelable view detail = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    type_' <- textToCString type_
+    let canBubble' = (fromIntegral . fromEnum) canBubble
+    let cancelable' = (fromIntegral . fromEnum) cancelable
+    let view' = unsafeManagedPtrCastPtr view
+    webkit_dom_ui_event_init_ui_event _obj' type_' canBubble' cancelable' view' detail
+    touchManagedPtr _obj
+    touchManagedPtr view
+    freeMem type_'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMUIEvent.hs-boot b/GI/WebKit2WebExtension/Objects/DOMUIEvent.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMUIEvent.hs-boot
@@ -0,0 +1,22 @@
+module GI.WebKit2WebExtension.Objects.DOMUIEvent where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMUIEvent = DOMUIEvent (ForeignPtr DOMUIEvent)
+instance GObject DOMUIEvent where
+class GObject o => DOMUIEventK o
+instance (GObject o, IsDescendantOf DOMUIEvent o) => DOMUIEventK o
+data DOMUIEventCharCodePropertyInfo
+data DOMUIEventDetailPropertyInfo
+data DOMUIEventKeyCodePropertyInfo
+data DOMUIEventLayerXPropertyInfo
+data DOMUIEventLayerYPropertyInfo
+data DOMUIEventPageXPropertyInfo
+data DOMUIEventPageYPropertyInfo
+data DOMUIEventViewPropertyInfo
+data DOMUIEventWhichPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMWheelEvent.hs b/GI/WebKit2WebExtension/Objects/DOMWheelEvent.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMWheelEvent.hs
@@ -0,0 +1,388 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMWheelEvent
+    ( 
+
+-- * Exported types
+    DOMWheelEvent(..)                       ,
+    DOMWheelEventK                          ,
+    toDOMWheelEvent                         ,
+    noDOMWheelEvent                         ,
+
+
+ -- * Methods
+-- ** dOMWheelEventGetWheelDelta
+    dOMWheelEventGetWheelDelta              ,
+
+
+-- ** dOMWheelEventGetWheelDeltaX
+    dOMWheelEventGetWheelDeltaX             ,
+
+
+-- ** dOMWheelEventGetWheelDeltaY
+    dOMWheelEventGetWheelDeltaY             ,
+
+
+-- ** dOMWheelEventInitWheelEvent
+    dOMWheelEventInitWheelEvent             ,
+
+
+
+
+ -- * Properties
+-- ** DeltaMode
+    DOMWheelEventDeltaModePropertyInfo      ,
+    getDOMWheelEventDeltaMode               ,
+
+
+-- ** DeltaX
+    DOMWheelEventDeltaXPropertyInfo         ,
+    getDOMWheelEventDeltaX                  ,
+
+
+-- ** DeltaY
+    DOMWheelEventDeltaYPropertyInfo         ,
+    getDOMWheelEventDeltaY                  ,
+
+
+-- ** DeltaZ
+    DOMWheelEventDeltaZPropertyInfo         ,
+    getDOMWheelEventDeltaZ                  ,
+
+
+-- ** WebkitDirectionInvertedFromDevice
+    DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo,
+    getDOMWheelEventWebkitDirectionInvertedFromDevice,
+
+
+-- ** WheelDelta
+    DOMWheelEventWheelDeltaPropertyInfo     ,
+    getDOMWheelEventWheelDelta              ,
+
+
+-- ** WheelDeltaX
+    DOMWheelEventWheelDeltaXPropertyInfo    ,
+    getDOMWheelEventWheelDeltaX             ,
+
+
+-- ** WheelDeltaY
+    DOMWheelEventWheelDeltaYPropertyInfo    ,
+    getDOMWheelEventWheelDeltaY             ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMWheelEvent = DOMWheelEvent (ForeignPtr DOMWheelEvent)
+foreign import ccall "webkit_dom_wheel_event_get_type"
+    c_webkit_dom_wheel_event_get_type :: IO GType
+
+type instance ParentTypes DOMWheelEvent = DOMWheelEventParentTypes
+type DOMWheelEventParentTypes = '[DOMMouseEvent, DOMUIEvent, DOMEvent, DOMObject, GObject.Object]
+
+instance GObject DOMWheelEvent where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_wheel_event_get_type
+    
+
+class GObject o => DOMWheelEventK o
+instance (GObject o, IsDescendantOf DOMWheelEvent o) => DOMWheelEventK o
+
+toDOMWheelEvent :: DOMWheelEventK o => o -> IO DOMWheelEvent
+toDOMWheelEvent = unsafeCastTo DOMWheelEvent
+
+noDOMWheelEvent :: Maybe DOMWheelEvent
+noDOMWheelEvent = Nothing
+
+-- VVV Prop "delta-mode"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMWheelEventDeltaMode :: (MonadIO m, DOMWheelEventK o) => o -> m Word64
+getDOMWheelEventDeltaMode obj = liftIO $ getObjectPropertyUInt64 obj "delta-mode"
+
+data DOMWheelEventDeltaModePropertyInfo
+instance AttrInfo DOMWheelEventDeltaModePropertyInfo where
+    type AttrAllowedOps DOMWheelEventDeltaModePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMWheelEventDeltaModePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMWheelEventDeltaModePropertyInfo = DOMWheelEventK
+    type AttrGetType DOMWheelEventDeltaModePropertyInfo = Word64
+    type AttrLabel DOMWheelEventDeltaModePropertyInfo = "DOMWheelEvent::delta-mode"
+    attrGet _ = getDOMWheelEventDeltaMode
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "delta-x"
+   -- Type: TBasicType TDouble
+   -- Flags: [PropertyReadable]
+
+getDOMWheelEventDeltaX :: (MonadIO m, DOMWheelEventK o) => o -> m Double
+getDOMWheelEventDeltaX obj = liftIO $ getObjectPropertyDouble obj "delta-x"
+
+data DOMWheelEventDeltaXPropertyInfo
+instance AttrInfo DOMWheelEventDeltaXPropertyInfo where
+    type AttrAllowedOps DOMWheelEventDeltaXPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMWheelEventDeltaXPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMWheelEventDeltaXPropertyInfo = DOMWheelEventK
+    type AttrGetType DOMWheelEventDeltaXPropertyInfo = Double
+    type AttrLabel DOMWheelEventDeltaXPropertyInfo = "DOMWheelEvent::delta-x"
+    attrGet _ = getDOMWheelEventDeltaX
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "delta-y"
+   -- Type: TBasicType TDouble
+   -- Flags: [PropertyReadable]
+
+getDOMWheelEventDeltaY :: (MonadIO m, DOMWheelEventK o) => o -> m Double
+getDOMWheelEventDeltaY obj = liftIO $ getObjectPropertyDouble obj "delta-y"
+
+data DOMWheelEventDeltaYPropertyInfo
+instance AttrInfo DOMWheelEventDeltaYPropertyInfo where
+    type AttrAllowedOps DOMWheelEventDeltaYPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMWheelEventDeltaYPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMWheelEventDeltaYPropertyInfo = DOMWheelEventK
+    type AttrGetType DOMWheelEventDeltaYPropertyInfo = Double
+    type AttrLabel DOMWheelEventDeltaYPropertyInfo = "DOMWheelEvent::delta-y"
+    attrGet _ = getDOMWheelEventDeltaY
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "delta-z"
+   -- Type: TBasicType TDouble
+   -- Flags: [PropertyReadable]
+
+getDOMWheelEventDeltaZ :: (MonadIO m, DOMWheelEventK o) => o -> m Double
+getDOMWheelEventDeltaZ obj = liftIO $ getObjectPropertyDouble obj "delta-z"
+
+data DOMWheelEventDeltaZPropertyInfo
+instance AttrInfo DOMWheelEventDeltaZPropertyInfo where
+    type AttrAllowedOps DOMWheelEventDeltaZPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMWheelEventDeltaZPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMWheelEventDeltaZPropertyInfo = DOMWheelEventK
+    type AttrGetType DOMWheelEventDeltaZPropertyInfo = Double
+    type AttrLabel DOMWheelEventDeltaZPropertyInfo = "DOMWheelEvent::delta-z"
+    attrGet _ = getDOMWheelEventDeltaZ
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "webkit-direction-inverted-from-device"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMWheelEventWebkitDirectionInvertedFromDevice :: (MonadIO m, DOMWheelEventK o) => o -> m Bool
+getDOMWheelEventWebkitDirectionInvertedFromDevice obj = liftIO $ getObjectPropertyBool obj "webkit-direction-inverted-from-device"
+
+data DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo
+instance AttrInfo DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo where
+    type AttrAllowedOps DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo = DOMWheelEventK
+    type AttrGetType DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo = Bool
+    type AttrLabel DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo = "DOMWheelEvent::webkit-direction-inverted-from-device"
+    attrGet _ = getDOMWheelEventWebkitDirectionInvertedFromDevice
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "wheel-delta"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMWheelEventWheelDelta :: (MonadIO m, DOMWheelEventK o) => o -> m Int64
+getDOMWheelEventWheelDelta obj = liftIO $ getObjectPropertyInt64 obj "wheel-delta"
+
+data DOMWheelEventWheelDeltaPropertyInfo
+instance AttrInfo DOMWheelEventWheelDeltaPropertyInfo where
+    type AttrAllowedOps DOMWheelEventWheelDeltaPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMWheelEventWheelDeltaPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMWheelEventWheelDeltaPropertyInfo = DOMWheelEventK
+    type AttrGetType DOMWheelEventWheelDeltaPropertyInfo = Int64
+    type AttrLabel DOMWheelEventWheelDeltaPropertyInfo = "DOMWheelEvent::wheel-delta"
+    attrGet _ = getDOMWheelEventWheelDelta
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "wheel-delta-x"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMWheelEventWheelDeltaX :: (MonadIO m, DOMWheelEventK o) => o -> m Int64
+getDOMWheelEventWheelDeltaX obj = liftIO $ getObjectPropertyInt64 obj "wheel-delta-x"
+
+data DOMWheelEventWheelDeltaXPropertyInfo
+instance AttrInfo DOMWheelEventWheelDeltaXPropertyInfo where
+    type AttrAllowedOps DOMWheelEventWheelDeltaXPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMWheelEventWheelDeltaXPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMWheelEventWheelDeltaXPropertyInfo = DOMWheelEventK
+    type AttrGetType DOMWheelEventWheelDeltaXPropertyInfo = Int64
+    type AttrLabel DOMWheelEventWheelDeltaXPropertyInfo = "DOMWheelEvent::wheel-delta-x"
+    attrGet _ = getDOMWheelEventWheelDeltaX
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "wheel-delta-y"
+   -- Type: TBasicType TInt64
+   -- Flags: [PropertyReadable]
+
+getDOMWheelEventWheelDeltaY :: (MonadIO m, DOMWheelEventK o) => o -> m Int64
+getDOMWheelEventWheelDeltaY obj = liftIO $ getObjectPropertyInt64 obj "wheel-delta-y"
+
+data DOMWheelEventWheelDeltaYPropertyInfo
+instance AttrInfo DOMWheelEventWheelDeltaYPropertyInfo where
+    type AttrAllowedOps DOMWheelEventWheelDeltaYPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMWheelEventWheelDeltaYPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMWheelEventWheelDeltaYPropertyInfo = DOMWheelEventK
+    type AttrGetType DOMWheelEventWheelDeltaYPropertyInfo = Int64
+    type AttrLabel DOMWheelEventWheelDeltaYPropertyInfo = "DOMWheelEvent::wheel-delta-y"
+    attrGet _ = getDOMWheelEventWheelDeltaY
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMWheelEvent = DOMWheelEventAttributeList
+type DOMWheelEventAttributeList = ('[ '("alt-key", DOMMouseEventAltKeyPropertyInfo), '("bubbles", DOMEventBubblesPropertyInfo), '("button", DOMMouseEventButtonPropertyInfo), '("cancel-bubble", DOMEventCancelBubblePropertyInfo), '("cancelable", DOMEventCancelablePropertyInfo), '("char-code", DOMUIEventCharCodePropertyInfo), '("client-x", DOMMouseEventClientXPropertyInfo), '("client-y", DOMMouseEventClientYPropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("ctrl-key", DOMMouseEventCtrlKeyPropertyInfo), '("current-target", DOMEventCurrentTargetPropertyInfo), '("default-prevented", DOMEventDefaultPreventedPropertyInfo), '("delta-mode", DOMWheelEventDeltaModePropertyInfo), '("delta-x", DOMWheelEventDeltaXPropertyInfo), '("delta-y", DOMWheelEventDeltaYPropertyInfo), '("delta-z", DOMWheelEventDeltaZPropertyInfo), '("detail", DOMUIEventDetailPropertyInfo), '("event-phase", DOMEventEventPhasePropertyInfo), '("from-element", DOMMouseEventFromElementPropertyInfo), '("key-code", DOMUIEventKeyCodePropertyInfo), '("layer-x", DOMUIEventLayerXPropertyInfo), '("layer-y", DOMUIEventLayerYPropertyInfo), '("meta-key", DOMMouseEventMetaKeyPropertyInfo), '("movement-x", DOMMouseEventMovementXPropertyInfo), '("movement-y", DOMMouseEventMovementYPropertyInfo), '("offset-x", DOMMouseEventOffsetXPropertyInfo), '("offset-y", DOMMouseEventOffsetYPropertyInfo), '("page-x", DOMUIEventPageXPropertyInfo), '("page-y", DOMUIEventPageYPropertyInfo), '("related-target", DOMMouseEventRelatedTargetPropertyInfo), '("return-value", DOMEventReturnValuePropertyInfo), '("screen-x", DOMMouseEventScreenXPropertyInfo), '("screen-y", DOMMouseEventScreenYPropertyInfo), '("shift-key", DOMMouseEventShiftKeyPropertyInfo), '("src-element", DOMEventSrcElementPropertyInfo), '("target", DOMEventTargetPropertyInfo), '("time-stamp", DOMEventTimeStampPropertyInfo), '("to-element", DOMMouseEventToElementPropertyInfo), '("type", DOMEventTypePropertyInfo), '("view", DOMUIEventViewPropertyInfo), '("webkit-direction-inverted-from-device", DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo), '("wheel-delta", DOMWheelEventWheelDeltaPropertyInfo), '("wheel-delta-x", DOMWheelEventWheelDeltaXPropertyInfo), '("wheel-delta-y", DOMWheelEventWheelDeltaYPropertyInfo), '("which", DOMUIEventWhichPropertyInfo), '("x", DOMMouseEventXPropertyInfo), '("y", DOMMouseEventYPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMWheelEvent = DOMWheelEventSignalList
+type DOMWheelEventSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMWheelEvent::get_wheel_delta
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMWheelEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMWheelEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_wheel_event_get_wheel_delta" webkit_dom_wheel_event_get_wheel_delta :: 
+    Ptr DOMWheelEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMWheelEvent"
+    IO Int64
+
+
+dOMWheelEventGetWheelDelta ::
+    (MonadIO m, DOMWheelEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMWheelEventGetWheelDelta _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_wheel_event_get_wheel_delta _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMWheelEvent::get_wheel_delta_x
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMWheelEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMWheelEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_wheel_event_get_wheel_delta_x" webkit_dom_wheel_event_get_wheel_delta_x :: 
+    Ptr DOMWheelEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMWheelEvent"
+    IO Int64
+
+
+dOMWheelEventGetWheelDeltaX ::
+    (MonadIO m, DOMWheelEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMWheelEventGetWheelDeltaX _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_wheel_event_get_wheel_delta_x _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMWheelEvent::get_wheel_delta_y
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMWheelEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMWheelEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_wheel_event_get_wheel_delta_y" webkit_dom_wheel_event_get_wheel_delta_y :: 
+    Ptr DOMWheelEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMWheelEvent"
+    IO Int64
+
+
+dOMWheelEventGetWheelDeltaY ::
+    (MonadIO m, DOMWheelEventK a) =>
+    a ->                                    -- _obj
+    m Int64
+dOMWheelEventGetWheelDeltaY _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_wheel_event_get_wheel_delta_y _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMWheelEvent::init_wheel_event
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMWheelEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "wheelDeltaX", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "wheelDeltaY", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "view", argType = TInterface "WebKit2WebExtension" "DOMDOMWindow", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "screenX", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "screenY", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "clientX", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "clientY", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ctrlKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "altKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "shiftKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "metaKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMWheelEvent", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "wheelDeltaX", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "wheelDeltaY", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "view", argType = TInterface "WebKit2WebExtension" "DOMDOMWindow", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "screenX", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "screenY", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "clientX", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "clientY", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "ctrlKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "altKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "shiftKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "metaKey", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_wheel_event_init_wheel_event" webkit_dom_wheel_event_init_wheel_event :: 
+    Ptr DOMWheelEvent ->                    -- _obj : TInterface "WebKit2WebExtension" "DOMWheelEvent"
+    Int64 ->                                -- wheelDeltaX : TBasicType TInt64
+    Int64 ->                                -- wheelDeltaY : TBasicType TInt64
+    Ptr DOMDOMWindow ->                     -- view : TInterface "WebKit2WebExtension" "DOMDOMWindow"
+    Int64 ->                                -- screenX : TBasicType TInt64
+    Int64 ->                                -- screenY : TBasicType TInt64
+    Int64 ->                                -- clientX : TBasicType TInt64
+    Int64 ->                                -- clientY : TBasicType TInt64
+    CInt ->                                 -- ctrlKey : TBasicType TBoolean
+    CInt ->                                 -- altKey : TBasicType TBoolean
+    CInt ->                                 -- shiftKey : TBasicType TBoolean
+    CInt ->                                 -- metaKey : TBasicType TBoolean
+    IO ()
+
+
+dOMWheelEventInitWheelEvent ::
+    (MonadIO m, DOMWheelEventK a, DOMDOMWindowK b) =>
+    a ->                                    -- _obj
+    Int64 ->                                -- wheelDeltaX
+    Int64 ->                                -- wheelDeltaY
+    b ->                                    -- view
+    Int64 ->                                -- screenX
+    Int64 ->                                -- screenY
+    Int64 ->                                -- clientX
+    Int64 ->                                -- clientY
+    Bool ->                                 -- ctrlKey
+    Bool ->                                 -- altKey
+    Bool ->                                 -- shiftKey
+    Bool ->                                 -- metaKey
+    m ()
+dOMWheelEventInitWheelEvent _obj wheelDeltaX wheelDeltaY view screenX screenY clientX clientY ctrlKey altKey shiftKey metaKey = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let view' = unsafeManagedPtrCastPtr view
+    let ctrlKey' = (fromIntegral . fromEnum) ctrlKey
+    let altKey' = (fromIntegral . fromEnum) altKey
+    let shiftKey' = (fromIntegral . fromEnum) shiftKey
+    let metaKey' = (fromIntegral . fromEnum) metaKey
+    webkit_dom_wheel_event_init_wheel_event _obj' wheelDeltaX wheelDeltaY view' screenX screenY clientX clientY ctrlKey' altKey' shiftKey' metaKey'
+    touchManagedPtr _obj
+    touchManagedPtr view
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMWheelEvent.hs-boot b/GI/WebKit2WebExtension/Objects/DOMWheelEvent.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMWheelEvent.hs-boot
@@ -0,0 +1,21 @@
+module GI.WebKit2WebExtension.Objects.DOMWheelEvent where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMWheelEvent = DOMWheelEvent (ForeignPtr DOMWheelEvent)
+instance GObject DOMWheelEvent where
+class GObject o => DOMWheelEventK o
+instance (GObject o, IsDescendantOf DOMWheelEvent o) => DOMWheelEventK o
+data DOMWheelEventDeltaModePropertyInfo
+data DOMWheelEventDeltaXPropertyInfo
+data DOMWheelEventDeltaYPropertyInfo
+data DOMWheelEventDeltaZPropertyInfo
+data DOMWheelEventWebkitDirectionInvertedFromDevicePropertyInfo
+data DOMWheelEventWheelDeltaPropertyInfo
+data DOMWheelEventWheelDeltaXPropertyInfo
+data DOMWheelEventWheelDeltaYPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/DOMXPathExpression.hs b/GI/WebKit2WebExtension/Objects/DOMXPathExpression.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMXPathExpression.hs
@@ -0,0 +1,106 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMXPathExpression
+    ( 
+
+-- * Exported types
+    DOMXPathExpression(..)                  ,
+    DOMXPathExpressionK                     ,
+    toDOMXPathExpression                    ,
+    noDOMXPathExpression                    ,
+
+
+ -- * Methods
+-- ** dOMXPathExpressionEvaluate
+    dOMXPathExpressionEvaluate              ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMXPathExpression = DOMXPathExpression (ForeignPtr DOMXPathExpression)
+foreign import ccall "webkit_dom_xpath_expression_get_type"
+    c_webkit_dom_xpath_expression_get_type :: IO GType
+
+type instance ParentTypes DOMXPathExpression = DOMXPathExpressionParentTypes
+type DOMXPathExpressionParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMXPathExpression where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_xpath_expression_get_type
+    
+
+class GObject o => DOMXPathExpressionK o
+instance (GObject o, IsDescendantOf DOMXPathExpression o) => DOMXPathExpressionK o
+
+toDOMXPathExpression :: DOMXPathExpressionK o => o -> IO DOMXPathExpression
+toDOMXPathExpression = unsafeCastTo DOMXPathExpression
+
+noDOMXPathExpression :: Maybe DOMXPathExpression
+noDOMXPathExpression = Nothing
+
+type instance AttributeList DOMXPathExpression = DOMXPathExpressionAttributeList
+type DOMXPathExpressionAttributeList = ('[ '("core-object", DOMObjectCoreObjectPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMXPathExpression = DOMXPathExpressionSignalList
+type DOMXPathExpressionSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMXPathExpression::evaluate
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathExpression", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "contextNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "type", argType = TBasicType TUInt16, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "inResult", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathExpression", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "contextNode", argType = TInterface "WebKit2WebExtension" "DOMNode", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "type", argType = TBasicType TUInt16, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "inResult", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMXPathResult"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_xpath_expression_evaluate" webkit_dom_xpath_expression_evaluate :: 
+    Ptr DOMXPathExpression ->               -- _obj : TInterface "WebKit2WebExtension" "DOMXPathExpression"
+    Ptr DOMNode ->                          -- contextNode : TInterface "WebKit2WebExtension" "DOMNode"
+    Word16 ->                               -- type : TBasicType TUInt16
+    Ptr DOMXPathResult ->                   -- inResult : TInterface "WebKit2WebExtension" "DOMXPathResult"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMXPathResult)
+
+
+dOMXPathExpressionEvaluate ::
+    (MonadIO m, DOMXPathExpressionK a, DOMNodeK b, DOMXPathResultK c) =>
+    a ->                                    -- _obj
+    b ->                                    -- contextNode
+    Word16 ->                               -- type
+    c ->                                    -- inResult
+    m DOMXPathResult
+dOMXPathExpressionEvaluate _obj contextNode type_ inResult = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let contextNode' = unsafeManagedPtrCastPtr contextNode
+    let inResult' = unsafeManagedPtrCastPtr inResult
+    onException (do
+        result <- propagateGError $ webkit_dom_xpath_expression_evaluate _obj' contextNode' type_ inResult'
+        checkUnexpectedReturnNULL "webkit_dom_xpath_expression_evaluate" result
+        result' <- (wrapObject DOMXPathResult) result
+        touchManagedPtr _obj
+        touchManagedPtr contextNode
+        touchManagedPtr inResult
+        return result'
+     ) (do
+        return ()
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMXPathExpression.hs-boot b/GI/WebKit2WebExtension/Objects/DOMXPathExpression.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMXPathExpression.hs-boot
@@ -0,0 +1,13 @@
+module GI.WebKit2WebExtension.Objects.DOMXPathExpression where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMXPathExpression = DOMXPathExpression (ForeignPtr DOMXPathExpression)
+instance GObject DOMXPathExpression where
+class GObject o => DOMXPathExpressionK o
+instance (GObject o, IsDescendantOf DOMXPathExpression o) => DOMXPathExpressionK o
diff --git a/GI/WebKit2WebExtension/Objects/DOMXPathResult.hs b/GI/WebKit2WebExtension/Objects/DOMXPathResult.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMXPathResult.hs
@@ -0,0 +1,525 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.DOMXPathResult
+    ( 
+
+-- * Exported types
+    DOMXPathResult(..)                      ,
+    DOMXPathResultK                         ,
+    toDOMXPathResult                        ,
+    noDOMXPathResult                        ,
+
+
+ -- * Methods
+-- ** dOMXPathResultGetBooleanValue
+    dOMXPathResultGetBooleanValue           ,
+
+
+-- ** dOMXPathResultGetInvalidIteratorState
+    dOMXPathResultGetInvalidIteratorState   ,
+
+
+-- ** dOMXPathResultGetNumberValue
+    dOMXPathResultGetNumberValue            ,
+
+
+-- ** dOMXPathResultGetResultType
+    dOMXPathResultGetResultType             ,
+
+
+-- ** dOMXPathResultGetSingleNodeValue
+    dOMXPathResultGetSingleNodeValue        ,
+
+
+-- ** dOMXPathResultGetSnapshotLength
+    dOMXPathResultGetSnapshotLength         ,
+
+
+-- ** dOMXPathResultGetStringValue
+    dOMXPathResultGetStringValue            ,
+
+
+-- ** dOMXPathResultIterateNext
+    dOMXPathResultIterateNext               ,
+
+
+-- ** dOMXPathResultSnapshotItem
+    dOMXPathResultSnapshotItem              ,
+
+
+
+
+ -- * Properties
+-- ** BooleanValue
+    DOMXPathResultBooleanValuePropertyInfo  ,
+    getDOMXPathResultBooleanValue           ,
+
+
+-- ** InvalidIteratorState
+    DOMXPathResultInvalidIteratorStatePropertyInfo,
+    getDOMXPathResultInvalidIteratorState   ,
+
+
+-- ** NumberValue
+    DOMXPathResultNumberValuePropertyInfo   ,
+    getDOMXPathResultNumberValue            ,
+
+
+-- ** ResultType
+    DOMXPathResultResultTypePropertyInfo    ,
+    getDOMXPathResultResultType             ,
+
+
+-- ** SingleNodeValue
+    DOMXPathResultSingleNodeValuePropertyInfo,
+    getDOMXPathResultSingleNodeValue        ,
+
+
+-- ** SnapshotLength
+    DOMXPathResultSnapshotLengthPropertyInfo,
+    getDOMXPathResultSnapshotLength         ,
+
+
+-- ** StringValue
+    DOMXPathResultStringValuePropertyInfo   ,
+    getDOMXPathResultStringValue            ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype DOMXPathResult = DOMXPathResult (ForeignPtr DOMXPathResult)
+foreign import ccall "webkit_dom_xpath_result_get_type"
+    c_webkit_dom_xpath_result_get_type :: IO GType
+
+type instance ParentTypes DOMXPathResult = DOMXPathResultParentTypes
+type DOMXPathResultParentTypes = '[DOMObject, GObject.Object]
+
+instance GObject DOMXPathResult where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_dom_xpath_result_get_type
+    
+
+class GObject o => DOMXPathResultK o
+instance (GObject o, IsDescendantOf DOMXPathResult o) => DOMXPathResultK o
+
+toDOMXPathResult :: DOMXPathResultK o => o -> IO DOMXPathResult
+toDOMXPathResult = unsafeCastTo DOMXPathResult
+
+noDOMXPathResult :: Maybe DOMXPathResult
+noDOMXPathResult = Nothing
+
+-- VVV Prop "boolean-value"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMXPathResultBooleanValue :: (MonadIO m, DOMXPathResultK o) => o -> m Bool
+getDOMXPathResultBooleanValue obj = liftIO $ getObjectPropertyBool obj "boolean-value"
+
+data DOMXPathResultBooleanValuePropertyInfo
+instance AttrInfo DOMXPathResultBooleanValuePropertyInfo where
+    type AttrAllowedOps DOMXPathResultBooleanValuePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMXPathResultBooleanValuePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMXPathResultBooleanValuePropertyInfo = DOMXPathResultK
+    type AttrGetType DOMXPathResultBooleanValuePropertyInfo = Bool
+    type AttrLabel DOMXPathResultBooleanValuePropertyInfo = "DOMXPathResult::boolean-value"
+    attrGet _ = getDOMXPathResultBooleanValue
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "invalid-iterator-state"
+   -- Type: TBasicType TBoolean
+   -- Flags: [PropertyReadable]
+
+getDOMXPathResultInvalidIteratorState :: (MonadIO m, DOMXPathResultK o) => o -> m Bool
+getDOMXPathResultInvalidIteratorState obj = liftIO $ getObjectPropertyBool obj "invalid-iterator-state"
+
+data DOMXPathResultInvalidIteratorStatePropertyInfo
+instance AttrInfo DOMXPathResultInvalidIteratorStatePropertyInfo where
+    type AttrAllowedOps DOMXPathResultInvalidIteratorStatePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMXPathResultInvalidIteratorStatePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMXPathResultInvalidIteratorStatePropertyInfo = DOMXPathResultK
+    type AttrGetType DOMXPathResultInvalidIteratorStatePropertyInfo = Bool
+    type AttrLabel DOMXPathResultInvalidIteratorStatePropertyInfo = "DOMXPathResult::invalid-iterator-state"
+    attrGet _ = getDOMXPathResultInvalidIteratorState
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "number-value"
+   -- Type: TBasicType TDouble
+   -- Flags: [PropertyReadable]
+
+getDOMXPathResultNumberValue :: (MonadIO m, DOMXPathResultK o) => o -> m Double
+getDOMXPathResultNumberValue obj = liftIO $ getObjectPropertyDouble obj "number-value"
+
+data DOMXPathResultNumberValuePropertyInfo
+instance AttrInfo DOMXPathResultNumberValuePropertyInfo where
+    type AttrAllowedOps DOMXPathResultNumberValuePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMXPathResultNumberValuePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMXPathResultNumberValuePropertyInfo = DOMXPathResultK
+    type AttrGetType DOMXPathResultNumberValuePropertyInfo = Double
+    type AttrLabel DOMXPathResultNumberValuePropertyInfo = "DOMXPathResult::number-value"
+    attrGet _ = getDOMXPathResultNumberValue
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "result-type"
+   -- Type: TBasicType TUInt32
+   -- Flags: [PropertyReadable]
+
+getDOMXPathResultResultType :: (MonadIO m, DOMXPathResultK o) => o -> m Word32
+getDOMXPathResultResultType obj = liftIO $ getObjectPropertyCUInt obj "result-type"
+
+data DOMXPathResultResultTypePropertyInfo
+instance AttrInfo DOMXPathResultResultTypePropertyInfo where
+    type AttrAllowedOps DOMXPathResultResultTypePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMXPathResultResultTypePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMXPathResultResultTypePropertyInfo = DOMXPathResultK
+    type AttrGetType DOMXPathResultResultTypePropertyInfo = Word32
+    type AttrLabel DOMXPathResultResultTypePropertyInfo = "DOMXPathResult::result-type"
+    attrGet _ = getDOMXPathResultResultType
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "single-node-value"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable]
+
+getDOMXPathResultSingleNodeValue :: (MonadIO m, DOMXPathResultK o) => o -> m DOMNode
+getDOMXPathResultSingleNodeValue obj = liftIO $ getObjectPropertyObject obj "single-node-value" DOMNode
+
+data DOMXPathResultSingleNodeValuePropertyInfo
+instance AttrInfo DOMXPathResultSingleNodeValuePropertyInfo where
+    type AttrAllowedOps DOMXPathResultSingleNodeValuePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMXPathResultSingleNodeValuePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMXPathResultSingleNodeValuePropertyInfo = DOMXPathResultK
+    type AttrGetType DOMXPathResultSingleNodeValuePropertyInfo = DOMNode
+    type AttrLabel DOMXPathResultSingleNodeValuePropertyInfo = "DOMXPathResult::single-node-value"
+    attrGet _ = getDOMXPathResultSingleNodeValue
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "snapshot-length"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getDOMXPathResultSnapshotLength :: (MonadIO m, DOMXPathResultK o) => o -> m Word64
+getDOMXPathResultSnapshotLength obj = liftIO $ getObjectPropertyUInt64 obj "snapshot-length"
+
+data DOMXPathResultSnapshotLengthPropertyInfo
+instance AttrInfo DOMXPathResultSnapshotLengthPropertyInfo where
+    type AttrAllowedOps DOMXPathResultSnapshotLengthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMXPathResultSnapshotLengthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMXPathResultSnapshotLengthPropertyInfo = DOMXPathResultK
+    type AttrGetType DOMXPathResultSnapshotLengthPropertyInfo = Word64
+    type AttrLabel DOMXPathResultSnapshotLengthPropertyInfo = "DOMXPathResult::snapshot-length"
+    attrGet _ = getDOMXPathResultSnapshotLength
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "string-value"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getDOMXPathResultStringValue :: (MonadIO m, DOMXPathResultK o) => o -> m T.Text
+getDOMXPathResultStringValue obj = liftIO $ getObjectPropertyString obj "string-value"
+
+data DOMXPathResultStringValuePropertyInfo
+instance AttrInfo DOMXPathResultStringValuePropertyInfo where
+    type AttrAllowedOps DOMXPathResultStringValuePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint DOMXPathResultStringValuePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint DOMXPathResultStringValuePropertyInfo = DOMXPathResultK
+    type AttrGetType DOMXPathResultStringValuePropertyInfo = T.Text
+    type AttrLabel DOMXPathResultStringValuePropertyInfo = "DOMXPathResult::string-value"
+    attrGet _ = getDOMXPathResultStringValue
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList DOMXPathResult = DOMXPathResultAttributeList
+type DOMXPathResultAttributeList = ('[ '("boolean-value", DOMXPathResultBooleanValuePropertyInfo), '("core-object", DOMObjectCoreObjectPropertyInfo), '("invalid-iterator-state", DOMXPathResultInvalidIteratorStatePropertyInfo), '("number-value", DOMXPathResultNumberValuePropertyInfo), '("result-type", DOMXPathResultResultTypePropertyInfo), '("single-node-value", DOMXPathResultSingleNodeValuePropertyInfo), '("snapshot-length", DOMXPathResultSnapshotLengthPropertyInfo), '("string-value", DOMXPathResultStringValuePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList DOMXPathResult = DOMXPathResultSignalList
+type DOMXPathResultSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method DOMXPathResult::get_boolean_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_xpath_result_get_boolean_value" webkit_dom_xpath_result_get_boolean_value :: 
+    Ptr DOMXPathResult ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMXPathResult"
+    Ptr (Ptr GError) ->                     -- error
+    IO CInt
+
+
+dOMXPathResultGetBooleanValue ::
+    (MonadIO m, DOMXPathResultK a) =>
+    a ->                                    -- _obj
+    m ()
+dOMXPathResultGetBooleanValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        _ <- propagateGError $ webkit_dom_xpath_result_get_boolean_value _obj'
+        touchManagedPtr _obj
+        return ()
+     ) (do
+        return ()
+     )
+
+-- method DOMXPathResult::get_invalid_iterator_state
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_xpath_result_get_invalid_iterator_state" webkit_dom_xpath_result_get_invalid_iterator_state :: 
+    Ptr DOMXPathResult ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMXPathResult"
+    IO CInt
+
+
+dOMXPathResultGetInvalidIteratorState ::
+    (MonadIO m, DOMXPathResultK a) =>
+    a ->                                    -- _obj
+    m Bool
+dOMXPathResultGetInvalidIteratorState _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_xpath_result_get_invalid_iterator_state _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method DOMXPathResult::get_number_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TDouble
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_xpath_result_get_number_value" webkit_dom_xpath_result_get_number_value :: 
+    Ptr DOMXPathResult ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMXPathResult"
+    Ptr (Ptr GError) ->                     -- error
+    IO CDouble
+
+
+dOMXPathResultGetNumberValue ::
+    (MonadIO m, DOMXPathResultK a) =>
+    a ->                                    -- _obj
+    m Double
+dOMXPathResultGetNumberValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_xpath_result_get_number_value _obj'
+        let result' = realToFrac result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMXPathResult::get_result_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt16
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_dom_xpath_result_get_result_type" webkit_dom_xpath_result_get_result_type :: 
+    Ptr DOMXPathResult ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMXPathResult"
+    IO Word16
+
+
+dOMXPathResultGetResultType ::
+    (MonadIO m, DOMXPathResultK a) =>
+    a ->                                    -- _obj
+    m Word16
+dOMXPathResultGetResultType _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_dom_xpath_result_get_result_type _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method DOMXPathResult::get_single_node_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_xpath_result_get_single_node_value" webkit_dom_xpath_result_get_single_node_value :: 
+    Ptr DOMXPathResult ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMXPathResult"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMXPathResultGetSingleNodeValue ::
+    (MonadIO m, DOMXPathResultK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMXPathResultGetSingleNodeValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_xpath_result_get_single_node_value _obj'
+        checkUnexpectedReturnNULL "webkit_dom_xpath_result_get_single_node_value" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMXPathResult::get_snapshot_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_xpath_result_get_snapshot_length" webkit_dom_xpath_result_get_snapshot_length :: 
+    Ptr DOMXPathResult ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMXPathResult"
+    Ptr (Ptr GError) ->                     -- error
+    IO Word64
+
+
+dOMXPathResultGetSnapshotLength ::
+    (MonadIO m, DOMXPathResultK a) =>
+    a ->                                    -- _obj
+    m Word64
+dOMXPathResultGetSnapshotLength _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_xpath_result_get_snapshot_length _obj'
+        touchManagedPtr _obj
+        return result
+     ) (do
+        return ()
+     )
+
+-- method DOMXPathResult::get_string_value
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_xpath_result_get_string_value" webkit_dom_xpath_result_get_string_value :: 
+    Ptr DOMXPathResult ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMXPathResult"
+    Ptr (Ptr GError) ->                     -- error
+    IO CString
+
+
+dOMXPathResultGetStringValue ::
+    (MonadIO m, DOMXPathResultK a) =>
+    a ->                                    -- _obj
+    m T.Text
+dOMXPathResultGetStringValue _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_xpath_result_get_string_value _obj'
+        checkUnexpectedReturnNULL "webkit_dom_xpath_result_get_string_value" result
+        result' <- cstringToText result
+        freeMem result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMXPathResult::iterate_next
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_xpath_result_iterate_next" webkit_dom_xpath_result_iterate_next :: 
+    Ptr DOMXPathResult ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMXPathResult"
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMXPathResultIterateNext ::
+    (MonadIO m, DOMXPathResultK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+dOMXPathResultIterateNext _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_xpath_result_iterate_next _obj'
+        checkUnexpectedReturnNULL "webkit_dom_xpath_result_iterate_next" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+-- method DOMXPathResult::snapshot_item
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "DOMXPathResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "index", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : True
+-- Skip return : False
+
+foreign import ccall "webkit_dom_xpath_result_snapshot_item" webkit_dom_xpath_result_snapshot_item :: 
+    Ptr DOMXPathResult ->                   -- _obj : TInterface "WebKit2WebExtension" "DOMXPathResult"
+    Word64 ->                               -- index : TBasicType TUInt64
+    Ptr (Ptr GError) ->                     -- error
+    IO (Ptr DOMNode)
+
+
+dOMXPathResultSnapshotItem ::
+    (MonadIO m, DOMXPathResultK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- index
+    m DOMNode
+dOMXPathResultSnapshotItem _obj index = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    onException (do
+        result <- propagateGError $ webkit_dom_xpath_result_snapshot_item _obj' index
+        checkUnexpectedReturnNULL "webkit_dom_xpath_result_snapshot_item" result
+        result' <- (newObject DOMNode) result
+        touchManagedPtr _obj
+        return result'
+     ) (do
+        return ()
+     )
+
+
diff --git a/GI/WebKit2WebExtension/Objects/DOMXPathResult.hs-boot b/GI/WebKit2WebExtension/Objects/DOMXPathResult.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/DOMXPathResult.hs-boot
@@ -0,0 +1,20 @@
+module GI.WebKit2WebExtension.Objects.DOMXPathResult where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype DOMXPathResult = DOMXPathResult (ForeignPtr DOMXPathResult)
+instance GObject DOMXPathResult where
+class GObject o => DOMXPathResultK o
+instance (GObject o, IsDescendantOf DOMXPathResult o) => DOMXPathResultK o
+data DOMXPathResultBooleanValuePropertyInfo
+data DOMXPathResultInvalidIteratorStatePropertyInfo
+data DOMXPathResultNumberValuePropertyInfo
+data DOMXPathResultResultTypePropertyInfo
+data DOMXPathResultSingleNodeValuePropertyInfo
+data DOMXPathResultSnapshotLengthPropertyInfo
+data DOMXPathResultStringValuePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/Frame.hs b/GI/WebKit2WebExtension/Objects/Frame.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/Frame.hs
@@ -0,0 +1,187 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.Frame
+    ( 
+
+-- * Exported types
+    Frame(..)                               ,
+    FrameK                                  ,
+    toFrame                                 ,
+    noFrame                                 ,
+
+
+ -- * Methods
+-- ** frameGetJavascriptContextForScriptWorld
+    frameGetJavascriptContextForScriptWorld ,
+
+
+-- ** frameGetJavascriptGlobalContext
+    frameGetJavascriptGlobalContext         ,
+
+
+-- ** frameGetUri
+    frameGetUri                             ,
+
+
+-- ** frameIsMainFrame
+    frameIsMainFrame                        ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+import qualified GI.JavaScriptCore as JavaScriptCore
+
+newtype Frame = Frame (ForeignPtr Frame)
+foreign import ccall "webkit_frame_get_type"
+    c_webkit_frame_get_type :: IO GType
+
+type instance ParentTypes Frame = FrameParentTypes
+type FrameParentTypes = '[GObject.Object]
+
+instance GObject Frame where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_frame_get_type
+    
+
+class GObject o => FrameK o
+instance (GObject o, IsDescendantOf Frame o) => FrameK o
+
+toFrame :: FrameK o => o -> IO Frame
+toFrame = unsafeCastTo Frame
+
+noFrame :: Maybe Frame
+noFrame = Nothing
+
+type instance AttributeList Frame = FrameAttributeList
+type FrameAttributeList = ('[ ] :: [(Symbol, *)])
+
+type instance SignalList Frame = FrameSignalList
+type FrameSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method Frame::get_javascript_context_for_script_world
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "Frame", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "world", argType = TInterface "WebKit2WebExtension" "ScriptWorld", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "Frame", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "world", argType = TInterface "WebKit2WebExtension" "ScriptWorld", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "JavaScriptCore" "GlobalContext"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_frame_get_javascript_context_for_script_world" webkit_frame_get_javascript_context_for_script_world :: 
+    Ptr Frame ->                            -- _obj : TInterface "WebKit2WebExtension" "Frame"
+    Ptr ScriptWorld ->                      -- world : TInterface "WebKit2WebExtension" "ScriptWorld"
+    IO (Ptr JavaScriptCore.GlobalContext)
+
+
+frameGetJavascriptContextForScriptWorld ::
+    (MonadIO m, FrameK a, ScriptWorldK b) =>
+    a ->                                    -- _obj
+    b ->                                    -- world
+    m JavaScriptCore.GlobalContext
+frameGetJavascriptContextForScriptWorld _obj world = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    let world' = unsafeManagedPtrCastPtr world
+    result <- webkit_frame_get_javascript_context_for_script_world _obj' world'
+    checkUnexpectedReturnNULL "webkit_frame_get_javascript_context_for_script_world" result
+    -- XXX Wrapping a foreign struct/union with no known destructor, leak?
+    result' <- (\x -> JavaScriptCore.GlobalContext <$> newForeignPtr_ x) result
+    touchManagedPtr _obj
+    touchManagedPtr world
+    return result'
+
+-- method Frame::get_javascript_global_context
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "Frame", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "Frame", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "JavaScriptCore" "GlobalContext"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_frame_get_javascript_global_context" webkit_frame_get_javascript_global_context :: 
+    Ptr Frame ->                            -- _obj : TInterface "WebKit2WebExtension" "Frame"
+    IO (Ptr JavaScriptCore.GlobalContext)
+
+
+frameGetJavascriptGlobalContext ::
+    (MonadIO m, FrameK a) =>
+    a ->                                    -- _obj
+    m JavaScriptCore.GlobalContext
+frameGetJavascriptGlobalContext _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_frame_get_javascript_global_context _obj'
+    checkUnexpectedReturnNULL "webkit_frame_get_javascript_global_context" result
+    -- XXX Wrapping a foreign struct/union with no known destructor, leak?
+    result' <- (\x -> JavaScriptCore.GlobalContext <$> newForeignPtr_ x) result
+    touchManagedPtr _obj
+    return result'
+
+-- method Frame::get_uri
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "Frame", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "Frame", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_frame_get_uri" webkit_frame_get_uri :: 
+    Ptr Frame ->                            -- _obj : TInterface "WebKit2WebExtension" "Frame"
+    IO CString
+
+
+frameGetUri ::
+    (MonadIO m, FrameK a) =>
+    a ->                                    -- _obj
+    m T.Text
+frameGetUri _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_frame_get_uri _obj'
+    checkUnexpectedReturnNULL "webkit_frame_get_uri" result
+    result' <- cstringToText result
+    touchManagedPtr _obj
+    return result'
+
+-- method Frame::is_main_frame
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "Frame", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "Frame", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_frame_is_main_frame" webkit_frame_is_main_frame :: 
+    Ptr Frame ->                            -- _obj : TInterface "WebKit2WebExtension" "Frame"
+    IO CInt
+
+
+frameIsMainFrame ::
+    (MonadIO m, FrameK a) =>
+    a ->                                    -- _obj
+    m Bool
+frameIsMainFrame _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_frame_is_main_frame _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/Frame.hs-boot b/GI/WebKit2WebExtension/Objects/Frame.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/Frame.hs-boot
@@ -0,0 +1,13 @@
+module GI.WebKit2WebExtension.Objects.Frame where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype Frame = Frame (ForeignPtr Frame)
+instance GObject Frame where
+class GObject o => FrameK o
+instance (GObject o, IsDescendantOf Frame o) => FrameK o
diff --git a/GI/WebKit2WebExtension/Objects/HitTestResult.hs b/GI/WebKit2WebExtension/Objects/HitTestResult.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/HitTestResult.hs
@@ -0,0 +1,578 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.HitTestResult
+    ( 
+
+-- * Exported types
+    HitTestResult(..)                       ,
+    HitTestResultK                          ,
+    toHitTestResult                         ,
+    noHitTestResult                         ,
+
+
+ -- * Methods
+-- ** hitTestResultContextIsEditable
+    hitTestResultContextIsEditable          ,
+
+
+-- ** hitTestResultContextIsImage
+    hitTestResultContextIsImage             ,
+
+
+-- ** hitTestResultContextIsLink
+    hitTestResultContextIsLink              ,
+
+
+-- ** hitTestResultContextIsMedia
+    hitTestResultContextIsMedia             ,
+
+
+-- ** hitTestResultContextIsScrollbar
+    hitTestResultContextIsScrollbar         ,
+
+
+-- ** hitTestResultContextIsSelection
+    hitTestResultContextIsSelection         ,
+
+
+-- ** hitTestResultGetContext
+    hitTestResultGetContext                 ,
+
+
+-- ** hitTestResultGetImageUri
+    hitTestResultGetImageUri                ,
+
+
+-- ** hitTestResultGetLinkLabel
+    hitTestResultGetLinkLabel               ,
+
+
+-- ** hitTestResultGetLinkTitle
+    hitTestResultGetLinkTitle               ,
+
+
+-- ** hitTestResultGetLinkUri
+    hitTestResultGetLinkUri                 ,
+
+
+-- ** hitTestResultGetMediaUri
+    hitTestResultGetMediaUri                ,
+
+
+
+
+ -- * Properties
+-- ** Context
+    HitTestResultContextPropertyInfo        ,
+    constructHitTestResultContext           ,
+    getHitTestResultContext                 ,
+
+
+-- ** ImageUri
+    HitTestResultImageUriPropertyInfo       ,
+    constructHitTestResultImageUri          ,
+    getHitTestResultImageUri                ,
+
+
+-- ** LinkLabel
+    HitTestResultLinkLabelPropertyInfo      ,
+    constructHitTestResultLinkLabel         ,
+    getHitTestResultLinkLabel               ,
+
+
+-- ** LinkTitle
+    HitTestResultLinkTitlePropertyInfo      ,
+    constructHitTestResultLinkTitle         ,
+    getHitTestResultLinkTitle               ,
+
+
+-- ** LinkUri
+    HitTestResultLinkUriPropertyInfo        ,
+    constructHitTestResultLinkUri           ,
+    getHitTestResultLinkUri                 ,
+
+
+-- ** MediaUri
+    HitTestResultMediaUriPropertyInfo       ,
+    constructHitTestResultMediaUri          ,
+    getHitTestResultMediaUri                ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype HitTestResult = HitTestResult (ForeignPtr HitTestResult)
+foreign import ccall "webkit_hit_test_result_get_type"
+    c_webkit_hit_test_result_get_type :: IO GType
+
+type instance ParentTypes HitTestResult = HitTestResultParentTypes
+type HitTestResultParentTypes = '[GObject.Object]
+
+instance GObject HitTestResult where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_hit_test_result_get_type
+    
+
+class GObject o => HitTestResultK o
+instance (GObject o, IsDescendantOf HitTestResult o) => HitTestResultK o
+
+toHitTestResult :: HitTestResultK o => o -> IO HitTestResult
+toHitTestResult = unsafeCastTo HitTestResult
+
+noHitTestResult :: Maybe HitTestResult
+noHitTestResult = Nothing
+
+-- VVV Prop "context"
+   -- Type: TBasicType TUInt32
+   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstructOnly]
+
+getHitTestResultContext :: (MonadIO m, HitTestResultK o) => o -> m Word32
+getHitTestResultContext obj = liftIO $ getObjectPropertyCUInt obj "context"
+
+constructHitTestResultContext :: Word32 -> IO ([Char], GValue)
+constructHitTestResultContext val = constructObjectPropertyCUInt "context" val
+
+data HitTestResultContextPropertyInfo
+instance AttrInfo HitTestResultContextPropertyInfo where
+    type AttrAllowedOps HitTestResultContextPropertyInfo = '[ 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint HitTestResultContextPropertyInfo = (~) Word32
+    type AttrBaseTypeConstraint HitTestResultContextPropertyInfo = HitTestResultK
+    type AttrGetType HitTestResultContextPropertyInfo = Word32
+    type AttrLabel HitTestResultContextPropertyInfo = "HitTestResult::context"
+    attrGet _ = getHitTestResultContext
+    attrSet _ = undefined
+    attrConstruct _ = constructHitTestResultContext
+
+-- VVV Prop "image-uri"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstructOnly]
+
+getHitTestResultImageUri :: (MonadIO m, HitTestResultK o) => o -> m T.Text
+getHitTestResultImageUri obj = liftIO $ getObjectPropertyString obj "image-uri"
+
+constructHitTestResultImageUri :: T.Text -> IO ([Char], GValue)
+constructHitTestResultImageUri val = constructObjectPropertyString "image-uri" val
+
+data HitTestResultImageUriPropertyInfo
+instance AttrInfo HitTestResultImageUriPropertyInfo where
+    type AttrAllowedOps HitTestResultImageUriPropertyInfo = '[ 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint HitTestResultImageUriPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint HitTestResultImageUriPropertyInfo = HitTestResultK
+    type AttrGetType HitTestResultImageUriPropertyInfo = T.Text
+    type AttrLabel HitTestResultImageUriPropertyInfo = "HitTestResult::image-uri"
+    attrGet _ = getHitTestResultImageUri
+    attrSet _ = undefined
+    attrConstruct _ = constructHitTestResultImageUri
+
+-- VVV Prop "link-label"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstructOnly]
+
+getHitTestResultLinkLabel :: (MonadIO m, HitTestResultK o) => o -> m T.Text
+getHitTestResultLinkLabel obj = liftIO $ getObjectPropertyString obj "link-label"
+
+constructHitTestResultLinkLabel :: T.Text -> IO ([Char], GValue)
+constructHitTestResultLinkLabel val = constructObjectPropertyString "link-label" val
+
+data HitTestResultLinkLabelPropertyInfo
+instance AttrInfo HitTestResultLinkLabelPropertyInfo where
+    type AttrAllowedOps HitTestResultLinkLabelPropertyInfo = '[ 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint HitTestResultLinkLabelPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint HitTestResultLinkLabelPropertyInfo = HitTestResultK
+    type AttrGetType HitTestResultLinkLabelPropertyInfo = T.Text
+    type AttrLabel HitTestResultLinkLabelPropertyInfo = "HitTestResult::link-label"
+    attrGet _ = getHitTestResultLinkLabel
+    attrSet _ = undefined
+    attrConstruct _ = constructHitTestResultLinkLabel
+
+-- VVV Prop "link-title"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstructOnly]
+
+getHitTestResultLinkTitle :: (MonadIO m, HitTestResultK o) => o -> m T.Text
+getHitTestResultLinkTitle obj = liftIO $ getObjectPropertyString obj "link-title"
+
+constructHitTestResultLinkTitle :: T.Text -> IO ([Char], GValue)
+constructHitTestResultLinkTitle val = constructObjectPropertyString "link-title" val
+
+data HitTestResultLinkTitlePropertyInfo
+instance AttrInfo HitTestResultLinkTitlePropertyInfo where
+    type AttrAllowedOps HitTestResultLinkTitlePropertyInfo = '[ 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint HitTestResultLinkTitlePropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint HitTestResultLinkTitlePropertyInfo = HitTestResultK
+    type AttrGetType HitTestResultLinkTitlePropertyInfo = T.Text
+    type AttrLabel HitTestResultLinkTitlePropertyInfo = "HitTestResult::link-title"
+    attrGet _ = getHitTestResultLinkTitle
+    attrSet _ = undefined
+    attrConstruct _ = constructHitTestResultLinkTitle
+
+-- VVV Prop "link-uri"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstructOnly]
+
+getHitTestResultLinkUri :: (MonadIO m, HitTestResultK o) => o -> m T.Text
+getHitTestResultLinkUri obj = liftIO $ getObjectPropertyString obj "link-uri"
+
+constructHitTestResultLinkUri :: T.Text -> IO ([Char], GValue)
+constructHitTestResultLinkUri val = constructObjectPropertyString "link-uri" val
+
+data HitTestResultLinkUriPropertyInfo
+instance AttrInfo HitTestResultLinkUriPropertyInfo where
+    type AttrAllowedOps HitTestResultLinkUriPropertyInfo = '[ 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint HitTestResultLinkUriPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint HitTestResultLinkUriPropertyInfo = HitTestResultK
+    type AttrGetType HitTestResultLinkUriPropertyInfo = T.Text
+    type AttrLabel HitTestResultLinkUriPropertyInfo = "HitTestResult::link-uri"
+    attrGet _ = getHitTestResultLinkUri
+    attrSet _ = undefined
+    attrConstruct _ = constructHitTestResultLinkUri
+
+-- VVV Prop "media-uri"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstructOnly]
+
+getHitTestResultMediaUri :: (MonadIO m, HitTestResultK o) => o -> m T.Text
+getHitTestResultMediaUri obj = liftIO $ getObjectPropertyString obj "media-uri"
+
+constructHitTestResultMediaUri :: T.Text -> IO ([Char], GValue)
+constructHitTestResultMediaUri val = constructObjectPropertyString "media-uri" val
+
+data HitTestResultMediaUriPropertyInfo
+instance AttrInfo HitTestResultMediaUriPropertyInfo where
+    type AttrAllowedOps HitTestResultMediaUriPropertyInfo = '[ 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint HitTestResultMediaUriPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint HitTestResultMediaUriPropertyInfo = HitTestResultK
+    type AttrGetType HitTestResultMediaUriPropertyInfo = T.Text
+    type AttrLabel HitTestResultMediaUriPropertyInfo = "HitTestResult::media-uri"
+    attrGet _ = getHitTestResultMediaUri
+    attrSet _ = undefined
+    attrConstruct _ = constructHitTestResultMediaUri
+
+type instance AttributeList HitTestResult = HitTestResultAttributeList
+type HitTestResultAttributeList = ('[ '("context", HitTestResultContextPropertyInfo), '("image-uri", HitTestResultImageUriPropertyInfo), '("link-label", HitTestResultLinkLabelPropertyInfo), '("link-title", HitTestResultLinkTitlePropertyInfo), '("link-uri", HitTestResultLinkUriPropertyInfo), '("media-uri", HitTestResultMediaUriPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList HitTestResult = HitTestResultSignalList
+type HitTestResultSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method HitTestResult::context_is_editable
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_hit_test_result_context_is_editable" webkit_hit_test_result_context_is_editable :: 
+    Ptr HitTestResult ->                    -- _obj : TInterface "WebKit2WebExtension" "HitTestResult"
+    IO CInt
+
+
+hitTestResultContextIsEditable ::
+    (MonadIO m, HitTestResultK a) =>
+    a ->                                    -- _obj
+    m Bool
+hitTestResultContextIsEditable _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_hit_test_result_context_is_editable _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method HitTestResult::context_is_image
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_hit_test_result_context_is_image" webkit_hit_test_result_context_is_image :: 
+    Ptr HitTestResult ->                    -- _obj : TInterface "WebKit2WebExtension" "HitTestResult"
+    IO CInt
+
+
+hitTestResultContextIsImage ::
+    (MonadIO m, HitTestResultK a) =>
+    a ->                                    -- _obj
+    m Bool
+hitTestResultContextIsImage _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_hit_test_result_context_is_image _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method HitTestResult::context_is_link
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_hit_test_result_context_is_link" webkit_hit_test_result_context_is_link :: 
+    Ptr HitTestResult ->                    -- _obj : TInterface "WebKit2WebExtension" "HitTestResult"
+    IO CInt
+
+
+hitTestResultContextIsLink ::
+    (MonadIO m, HitTestResultK a) =>
+    a ->                                    -- _obj
+    m Bool
+hitTestResultContextIsLink _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_hit_test_result_context_is_link _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method HitTestResult::context_is_media
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_hit_test_result_context_is_media" webkit_hit_test_result_context_is_media :: 
+    Ptr HitTestResult ->                    -- _obj : TInterface "WebKit2WebExtension" "HitTestResult"
+    IO CInt
+
+
+hitTestResultContextIsMedia ::
+    (MonadIO m, HitTestResultK a) =>
+    a ->                                    -- _obj
+    m Bool
+hitTestResultContextIsMedia _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_hit_test_result_context_is_media _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method HitTestResult::context_is_scrollbar
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_hit_test_result_context_is_scrollbar" webkit_hit_test_result_context_is_scrollbar :: 
+    Ptr HitTestResult ->                    -- _obj : TInterface "WebKit2WebExtension" "HitTestResult"
+    IO CInt
+
+
+hitTestResultContextIsScrollbar ::
+    (MonadIO m, HitTestResultK a) =>
+    a ->                                    -- _obj
+    m Bool
+hitTestResultContextIsScrollbar _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_hit_test_result_context_is_scrollbar _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method HitTestResult::context_is_selection
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TBoolean
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_hit_test_result_context_is_selection" webkit_hit_test_result_context_is_selection :: 
+    Ptr HitTestResult ->                    -- _obj : TInterface "WebKit2WebExtension" "HitTestResult"
+    IO CInt
+
+
+hitTestResultContextIsSelection ::
+    (MonadIO m, HitTestResultK a) =>
+    a ->                                    -- _obj
+    m Bool
+hitTestResultContextIsSelection _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_hit_test_result_context_is_selection _obj'
+    let result' = (/= 0) result
+    touchManagedPtr _obj
+    return result'
+
+-- method HitTestResult::get_context
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt32
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_hit_test_result_get_context" webkit_hit_test_result_get_context :: 
+    Ptr HitTestResult ->                    -- _obj : TInterface "WebKit2WebExtension" "HitTestResult"
+    IO Word32
+
+
+hitTestResultGetContext ::
+    (MonadIO m, HitTestResultK a) =>
+    a ->                                    -- _obj
+    m Word32
+hitTestResultGetContext _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_hit_test_result_get_context _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method HitTestResult::get_image_uri
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_hit_test_result_get_image_uri" webkit_hit_test_result_get_image_uri :: 
+    Ptr HitTestResult ->                    -- _obj : TInterface "WebKit2WebExtension" "HitTestResult"
+    IO CString
+
+
+hitTestResultGetImageUri ::
+    (MonadIO m, HitTestResultK a) =>
+    a ->                                    -- _obj
+    m T.Text
+hitTestResultGetImageUri _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_hit_test_result_get_image_uri _obj'
+    checkUnexpectedReturnNULL "webkit_hit_test_result_get_image_uri" result
+    result' <- cstringToText result
+    touchManagedPtr _obj
+    return result'
+
+-- method HitTestResult::get_link_label
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_hit_test_result_get_link_label" webkit_hit_test_result_get_link_label :: 
+    Ptr HitTestResult ->                    -- _obj : TInterface "WebKit2WebExtension" "HitTestResult"
+    IO CString
+
+
+hitTestResultGetLinkLabel ::
+    (MonadIO m, HitTestResultK a) =>
+    a ->                                    -- _obj
+    m T.Text
+hitTestResultGetLinkLabel _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_hit_test_result_get_link_label _obj'
+    checkUnexpectedReturnNULL "webkit_hit_test_result_get_link_label" result
+    result' <- cstringToText result
+    touchManagedPtr _obj
+    return result'
+
+-- method HitTestResult::get_link_title
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_hit_test_result_get_link_title" webkit_hit_test_result_get_link_title :: 
+    Ptr HitTestResult ->                    -- _obj : TInterface "WebKit2WebExtension" "HitTestResult"
+    IO CString
+
+
+hitTestResultGetLinkTitle ::
+    (MonadIO m, HitTestResultK a) =>
+    a ->                                    -- _obj
+    m T.Text
+hitTestResultGetLinkTitle _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_hit_test_result_get_link_title _obj'
+    checkUnexpectedReturnNULL "webkit_hit_test_result_get_link_title" result
+    result' <- cstringToText result
+    touchManagedPtr _obj
+    return result'
+
+-- method HitTestResult::get_link_uri
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_hit_test_result_get_link_uri" webkit_hit_test_result_get_link_uri :: 
+    Ptr HitTestResult ->                    -- _obj : TInterface "WebKit2WebExtension" "HitTestResult"
+    IO CString
+
+
+hitTestResultGetLinkUri ::
+    (MonadIO m, HitTestResultK a) =>
+    a ->                                    -- _obj
+    m T.Text
+hitTestResultGetLinkUri _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_hit_test_result_get_link_uri _obj'
+    checkUnexpectedReturnNULL "webkit_hit_test_result_get_link_uri" result
+    result' <- cstringToText result
+    touchManagedPtr _obj
+    return result'
+
+-- method HitTestResult::get_media_uri
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "HitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_hit_test_result_get_media_uri" webkit_hit_test_result_get_media_uri :: 
+    Ptr HitTestResult ->                    -- _obj : TInterface "WebKit2WebExtension" "HitTestResult"
+    IO CString
+
+
+hitTestResultGetMediaUri ::
+    (MonadIO m, HitTestResultK a) =>
+    a ->                                    -- _obj
+    m T.Text
+hitTestResultGetMediaUri _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_hit_test_result_get_media_uri _obj'
+    checkUnexpectedReturnNULL "webkit_hit_test_result_get_media_uri" result
+    result' <- cstringToText result
+    touchManagedPtr _obj
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/HitTestResult.hs-boot b/GI/WebKit2WebExtension/Objects/HitTestResult.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/HitTestResult.hs-boot
@@ -0,0 +1,19 @@
+module GI.WebKit2WebExtension.Objects.HitTestResult where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype HitTestResult = HitTestResult (ForeignPtr HitTestResult)
+instance GObject HitTestResult where
+class GObject o => HitTestResultK o
+instance (GObject o, IsDescendantOf HitTestResult o) => HitTestResultK o
+data HitTestResultContextPropertyInfo
+data HitTestResultImageUriPropertyInfo
+data HitTestResultLinkLabelPropertyInfo
+data HitTestResultLinkTitlePropertyInfo
+data HitTestResultLinkUriPropertyInfo
+data HitTestResultMediaUriPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/ScriptWorld.hs b/GI/WebKit2WebExtension/Objects/ScriptWorld.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/ScriptWorld.hs
@@ -0,0 +1,179 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.ScriptWorld
+    ( 
+
+-- * Exported types
+    ScriptWorld(..)                         ,
+    ScriptWorldK                            ,
+    toScriptWorld                           ,
+    noScriptWorld                           ,
+
+
+ -- * Methods
+-- ** scriptWorldGetDefault
+    scriptWorldGetDefault                   ,
+
+
+-- ** scriptWorldNew
+    scriptWorldNew                          ,
+
+
+
+
+ -- * Signals
+-- ** WindowObjectCleared
+    ScriptWorldWindowObjectClearedCallback  ,
+    ScriptWorldWindowObjectClearedCallbackC ,
+    ScriptWorldWindowObjectClearedSignalInfo,
+    afterScriptWorldWindowObjectCleared     ,
+    mkScriptWorldWindowObjectClearedCallback,
+    noScriptWorldWindowObjectClearedCallback,
+    onScriptWorldWindowObjectCleared        ,
+    scriptWorldWindowObjectClearedCallbackWrapper,
+    scriptWorldWindowObjectClearedClosure   ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype ScriptWorld = ScriptWorld (ForeignPtr ScriptWorld)
+foreign import ccall "webkit_script_world_get_type"
+    c_webkit_script_world_get_type :: IO GType
+
+type instance ParentTypes ScriptWorld = ScriptWorldParentTypes
+type ScriptWorldParentTypes = '[GObject.Object]
+
+instance GObject ScriptWorld where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_script_world_get_type
+    
+
+class GObject o => ScriptWorldK o
+instance (GObject o, IsDescendantOf ScriptWorld o) => ScriptWorldK o
+
+toScriptWorld :: ScriptWorldK o => o -> IO ScriptWorld
+toScriptWorld = unsafeCastTo ScriptWorld
+
+noScriptWorld :: Maybe ScriptWorld
+noScriptWorld = Nothing
+
+-- signal ScriptWorld::window-object-cleared
+type ScriptWorldWindowObjectClearedCallback =
+    WebPage ->
+    Frame ->
+    IO ()
+
+noScriptWorldWindowObjectClearedCallback :: Maybe ScriptWorldWindowObjectClearedCallback
+noScriptWorldWindowObjectClearedCallback = Nothing
+
+type ScriptWorldWindowObjectClearedCallbackC =
+    Ptr () ->                               -- object
+    Ptr WebPage ->
+    Ptr Frame ->
+    Ptr () ->                               -- user_data
+    IO ()
+
+foreign import ccall "wrapper"
+    mkScriptWorldWindowObjectClearedCallback :: ScriptWorldWindowObjectClearedCallbackC -> IO (FunPtr ScriptWorldWindowObjectClearedCallbackC)
+
+scriptWorldWindowObjectClearedClosure :: ScriptWorldWindowObjectClearedCallback -> IO Closure
+scriptWorldWindowObjectClearedClosure cb = newCClosure =<< mkScriptWorldWindowObjectClearedCallback wrapped
+    where wrapped = scriptWorldWindowObjectClearedCallbackWrapper cb
+
+scriptWorldWindowObjectClearedCallbackWrapper ::
+    ScriptWorldWindowObjectClearedCallback ->
+    Ptr () ->
+    Ptr WebPage ->
+    Ptr Frame ->
+    Ptr () ->
+    IO ()
+scriptWorldWindowObjectClearedCallbackWrapper _cb _ page frame _ = do
+    page' <- (newObject WebPage) page
+    frame' <- (newObject Frame) frame
+    _cb  page' frame'
+
+onScriptWorldWindowObjectCleared :: (GObject a, MonadIO m) => a -> ScriptWorldWindowObjectClearedCallback -> m SignalHandlerId
+onScriptWorldWindowObjectCleared obj cb = liftIO $ connectScriptWorldWindowObjectCleared obj cb SignalConnectBefore
+afterScriptWorldWindowObjectCleared :: (GObject a, MonadIO m) => a -> ScriptWorldWindowObjectClearedCallback -> m SignalHandlerId
+afterScriptWorldWindowObjectCleared obj cb = connectScriptWorldWindowObjectCleared obj cb SignalConnectAfter
+
+connectScriptWorldWindowObjectCleared :: (GObject a, MonadIO m) =>
+                                         a -> ScriptWorldWindowObjectClearedCallback -> SignalConnectMode -> m SignalHandlerId
+connectScriptWorldWindowObjectCleared obj cb after = liftIO $ do
+    cb' <- mkScriptWorldWindowObjectClearedCallback (scriptWorldWindowObjectClearedCallbackWrapper cb)
+    connectSignalFunPtr obj "window-object-cleared" cb' after
+
+type instance AttributeList ScriptWorld = ScriptWorldAttributeList
+type ScriptWorldAttributeList = ('[ ] :: [(Symbol, *)])
+
+data ScriptWorldWindowObjectClearedSignalInfo
+instance SignalInfo ScriptWorldWindowObjectClearedSignalInfo where
+    type HaskellCallbackType ScriptWorldWindowObjectClearedSignalInfo = ScriptWorldWindowObjectClearedCallback
+    connectSignal _ = connectScriptWorldWindowObjectCleared
+
+type instance SignalList ScriptWorld = ScriptWorldSignalList
+type ScriptWorldSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("window-object-cleared", ScriptWorldWindowObjectClearedSignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method ScriptWorld::new
+-- method type : Constructor
+-- Args : []
+-- Lengths : []
+-- hInArgs : []
+-- returnType : TInterface "WebKit2WebExtension" "ScriptWorld"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_script_world_new" webkit_script_world_new :: 
+    IO (Ptr ScriptWorld)
+
+
+scriptWorldNew ::
+    (MonadIO m) =>
+    m ScriptWorld
+scriptWorldNew  = liftIO $ do
+    result <- webkit_script_world_new
+    checkUnexpectedReturnNULL "webkit_script_world_new" result
+    result' <- (wrapObject ScriptWorld) result
+    return result'
+
+-- method ScriptWorld::get_default
+-- method type : MemberFunction
+-- Args : []
+-- Lengths : []
+-- hInArgs : []
+-- returnType : TInterface "WebKit2WebExtension" "ScriptWorld"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_script_world_get_default" webkit_script_world_get_default :: 
+    IO (Ptr ScriptWorld)
+
+
+scriptWorldGetDefault ::
+    (MonadIO m) =>
+    m ScriptWorld
+scriptWorldGetDefault  = liftIO $ do
+    result <- webkit_script_world_get_default
+    checkUnexpectedReturnNULL "webkit_script_world_get_default" result
+    result' <- (newObject ScriptWorld) result
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/ScriptWorld.hs-boot b/GI/WebKit2WebExtension/Objects/ScriptWorld.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/ScriptWorld.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.ScriptWorld where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype ScriptWorld = ScriptWorld (ForeignPtr ScriptWorld)
+instance GObject ScriptWorld where
+class GObject o => ScriptWorldK o
+instance (GObject o, IsDescendantOf ScriptWorld o) => ScriptWorldK o
+data ScriptWorldWindowObjectClearedSignalInfo
diff --git a/GI/WebKit2WebExtension/Objects/URIRequest.hs b/GI/WebKit2WebExtension/Objects/URIRequest.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/URIRequest.hs
@@ -0,0 +1,218 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.URIRequest
+    ( 
+
+-- * Exported types
+    URIRequest(..)                          ,
+    URIRequestK                             ,
+    toURIRequest                            ,
+    noURIRequest                            ,
+
+
+ -- * Methods
+-- ** uRIRequestGetHttpHeaders
+    uRIRequestGetHttpHeaders                ,
+
+
+-- ** uRIRequestGetUri
+    uRIRequestGetUri                        ,
+
+
+-- ** uRIRequestNew
+    uRIRequestNew                           ,
+
+
+-- ** uRIRequestSetUri
+    uRIRequestSetUri                        ,
+
+
+
+
+ -- * Properties
+-- ** Uri
+    URIRequestUriPropertyInfo               ,
+    constructURIRequestUri                  ,
+    getURIRequestUri                        ,
+    setURIRequestUri                        ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+import qualified GI.Soup as Soup
+
+newtype URIRequest = URIRequest (ForeignPtr URIRequest)
+foreign import ccall "webkit_uri_request_get_type"
+    c_webkit_uri_request_get_type :: IO GType
+
+type instance ParentTypes URIRequest = URIRequestParentTypes
+type URIRequestParentTypes = '[GObject.Object]
+
+instance GObject URIRequest where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_uri_request_get_type
+    
+
+class GObject o => URIRequestK o
+instance (GObject o, IsDescendantOf URIRequest o) => URIRequestK o
+
+toURIRequest :: URIRequestK o => o -> IO URIRequest
+toURIRequest = unsafeCastTo URIRequest
+
+noURIRequest :: Maybe URIRequest
+noURIRequest = Nothing
+
+-- VVV Prop "uri"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstruct]
+
+getURIRequestUri :: (MonadIO m, URIRequestK o) => o -> m T.Text
+getURIRequestUri obj = liftIO $ getObjectPropertyString obj "uri"
+
+setURIRequestUri :: (MonadIO m, URIRequestK o) => o -> T.Text -> m ()
+setURIRequestUri obj val = liftIO $ setObjectPropertyString obj "uri" val
+
+constructURIRequestUri :: T.Text -> IO ([Char], GValue)
+constructURIRequestUri val = constructObjectPropertyString "uri" val
+
+data URIRequestUriPropertyInfo
+instance AttrInfo URIRequestUriPropertyInfo where
+    type AttrAllowedOps URIRequestUriPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint URIRequestUriPropertyInfo = (~) T.Text
+    type AttrBaseTypeConstraint URIRequestUriPropertyInfo = URIRequestK
+    type AttrGetType URIRequestUriPropertyInfo = T.Text
+    type AttrLabel URIRequestUriPropertyInfo = "URIRequest::uri"
+    attrGet _ = getURIRequestUri
+    attrSet _ = setURIRequestUri
+    attrConstruct _ = constructURIRequestUri
+
+type instance AttributeList URIRequest = URIRequestAttributeList
+type URIRequestAttributeList = ('[ '("uri", URIRequestUriPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList URIRequest = URIRequestSignalList
+type URIRequestSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method URIRequest::new
+-- method type : Constructor
+-- Args : [Arg {argName = "uri", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "uri", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "URIRequest"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_uri_request_new" webkit_uri_request_new :: 
+    CString ->                              -- uri : TBasicType TUTF8
+    IO (Ptr URIRequest)
+
+
+uRIRequestNew ::
+    (MonadIO m) =>
+    T.Text ->                               -- uri
+    m URIRequest
+uRIRequestNew uri = liftIO $ do
+    uri' <- textToCString uri
+    result <- webkit_uri_request_new uri'
+    checkUnexpectedReturnNULL "webkit_uri_request_new" result
+    result' <- (wrapObject URIRequest) result
+    freeMem uri'
+    return result'
+
+-- method URIRequest::get_http_headers
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIRequest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIRequest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "Soup" "MessageHeaders"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_uri_request_get_http_headers" webkit_uri_request_get_http_headers :: 
+    Ptr URIRequest ->                       -- _obj : TInterface "WebKit2WebExtension" "URIRequest"
+    IO (Ptr Soup.MessageHeaders)
+
+
+uRIRequestGetHttpHeaders ::
+    (MonadIO m, URIRequestK a) =>
+    a ->                                    -- _obj
+    m Soup.MessageHeaders
+uRIRequestGetHttpHeaders _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_uri_request_get_http_headers _obj'
+    checkUnexpectedReturnNULL "webkit_uri_request_get_http_headers" result
+    result' <- (wrapBoxed Soup.MessageHeaders) result
+    touchManagedPtr _obj
+    return result'
+
+-- method URIRequest::get_uri
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIRequest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIRequest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_uri_request_get_uri" webkit_uri_request_get_uri :: 
+    Ptr URIRequest ->                       -- _obj : TInterface "WebKit2WebExtension" "URIRequest"
+    IO CString
+
+
+uRIRequestGetUri ::
+    (MonadIO m, URIRequestK a) =>
+    a ->                                    -- _obj
+    m T.Text
+uRIRequestGetUri _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_uri_request_get_uri _obj'
+    checkUnexpectedReturnNULL "webkit_uri_request_get_uri" result
+    result' <- cstringToText result
+    touchManagedPtr _obj
+    return result'
+
+-- method URIRequest::set_uri
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIRequest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "uri", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIRequest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "uri", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TVoid
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_uri_request_set_uri" webkit_uri_request_set_uri :: 
+    Ptr URIRequest ->                       -- _obj : TInterface "WebKit2WebExtension" "URIRequest"
+    CString ->                              -- uri : TBasicType TUTF8
+    IO ()
+
+
+uRIRequestSetUri ::
+    (MonadIO m, URIRequestK a) =>
+    a ->                                    -- _obj
+    T.Text ->                               -- uri
+    m ()
+uRIRequestSetUri _obj uri = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    uri' <- textToCString uri
+    webkit_uri_request_set_uri _obj' uri'
+    touchManagedPtr _obj
+    freeMem uri'
+    return ()
+
+
diff --git a/GI/WebKit2WebExtension/Objects/URIRequest.hs-boot b/GI/WebKit2WebExtension/Objects/URIRequest.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/URIRequest.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.URIRequest where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype URIRequest = URIRequest (ForeignPtr URIRequest)
+instance GObject URIRequest where
+class GObject o => URIRequestK o
+instance (GObject o, IsDescendantOf URIRequest o) => URIRequestK o
+data URIRequestUriPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/URIResponse.hs b/GI/WebKit2WebExtension/Objects/URIResponse.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/URIResponse.hs
@@ -0,0 +1,379 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.URIResponse
+    ( 
+
+-- * Exported types
+    URIResponse(..)                         ,
+    URIResponseK                            ,
+    toURIResponse                           ,
+    noURIResponse                           ,
+
+
+ -- * Methods
+-- ** uRIResponseGetContentLength
+    uRIResponseGetContentLength             ,
+
+
+-- ** uRIResponseGetHttpHeaders
+    uRIResponseGetHttpHeaders               ,
+
+
+-- ** uRIResponseGetMimeType
+    uRIResponseGetMimeType                  ,
+
+
+-- ** uRIResponseGetStatusCode
+    uRIResponseGetStatusCode                ,
+
+
+-- ** uRIResponseGetSuggestedFilename
+    uRIResponseGetSuggestedFilename         ,
+
+
+-- ** uRIResponseGetUri
+    uRIResponseGetUri                       ,
+
+
+
+
+ -- * Properties
+-- ** ContentLength
+    URIResponseContentLengthPropertyInfo    ,
+    getURIResponseContentLength             ,
+
+
+-- ** HttpHeaders
+    URIResponseHttpHeadersPropertyInfo      ,
+    getURIResponseHttpHeaders               ,
+
+
+-- ** MimeType
+    URIResponseMimeTypePropertyInfo         ,
+    getURIResponseMimeType                  ,
+
+
+-- ** StatusCode
+    URIResponseStatusCodePropertyInfo       ,
+    getURIResponseStatusCode                ,
+
+
+-- ** SuggestedFilename
+    URIResponseSuggestedFilenamePropertyInfo,
+    getURIResponseSuggestedFilename         ,
+
+
+-- ** Uri
+    URIResponseUriPropertyInfo              ,
+    getURIResponseUri                       ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+import qualified GI.Soup as Soup
+
+newtype URIResponse = URIResponse (ForeignPtr URIResponse)
+foreign import ccall "webkit_uri_response_get_type"
+    c_webkit_uri_response_get_type :: IO GType
+
+type instance ParentTypes URIResponse = URIResponseParentTypes
+type URIResponseParentTypes = '[GObject.Object]
+
+instance GObject URIResponse where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_uri_response_get_type
+    
+
+class GObject o => URIResponseK o
+instance (GObject o, IsDescendantOf URIResponse o) => URIResponseK o
+
+toURIResponse :: URIResponseK o => o -> IO URIResponse
+toURIResponse = unsafeCastTo URIResponse
+
+noURIResponse :: Maybe URIResponse
+noURIResponse = Nothing
+
+-- VVV Prop "content-length"
+   -- Type: TBasicType TUInt64
+   -- Flags: [PropertyReadable]
+
+getURIResponseContentLength :: (MonadIO m, URIResponseK o) => o -> m Word64
+getURIResponseContentLength obj = liftIO $ getObjectPropertyUInt64 obj "content-length"
+
+data URIResponseContentLengthPropertyInfo
+instance AttrInfo URIResponseContentLengthPropertyInfo where
+    type AttrAllowedOps URIResponseContentLengthPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint URIResponseContentLengthPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint URIResponseContentLengthPropertyInfo = URIResponseK
+    type AttrGetType URIResponseContentLengthPropertyInfo = Word64
+    type AttrLabel URIResponseContentLengthPropertyInfo = "URIResponse::content-length"
+    attrGet _ = getURIResponseContentLength
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "http-headers"
+   -- Type: TInterface "Soup" "MessageHeaders"
+   -- Flags: [PropertyReadable]
+
+getURIResponseHttpHeaders :: (MonadIO m, URIResponseK o) => o -> m Soup.MessageHeaders
+getURIResponseHttpHeaders obj = liftIO $ getObjectPropertyBoxed obj "http-headers" Soup.MessageHeaders
+
+data URIResponseHttpHeadersPropertyInfo
+instance AttrInfo URIResponseHttpHeadersPropertyInfo where
+    type AttrAllowedOps URIResponseHttpHeadersPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint URIResponseHttpHeadersPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint URIResponseHttpHeadersPropertyInfo = URIResponseK
+    type AttrGetType URIResponseHttpHeadersPropertyInfo = Soup.MessageHeaders
+    type AttrLabel URIResponseHttpHeadersPropertyInfo = "URIResponse::http-headers"
+    attrGet _ = getURIResponseHttpHeaders
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "mime-type"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getURIResponseMimeType :: (MonadIO m, URIResponseK o) => o -> m T.Text
+getURIResponseMimeType obj = liftIO $ getObjectPropertyString obj "mime-type"
+
+data URIResponseMimeTypePropertyInfo
+instance AttrInfo URIResponseMimeTypePropertyInfo where
+    type AttrAllowedOps URIResponseMimeTypePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint URIResponseMimeTypePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint URIResponseMimeTypePropertyInfo = URIResponseK
+    type AttrGetType URIResponseMimeTypePropertyInfo = T.Text
+    type AttrLabel URIResponseMimeTypePropertyInfo = "URIResponse::mime-type"
+    attrGet _ = getURIResponseMimeType
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "status-code"
+   -- Type: TBasicType TUInt32
+   -- Flags: [PropertyReadable]
+
+getURIResponseStatusCode :: (MonadIO m, URIResponseK o) => o -> m Word32
+getURIResponseStatusCode obj = liftIO $ getObjectPropertyCUInt obj "status-code"
+
+data URIResponseStatusCodePropertyInfo
+instance AttrInfo URIResponseStatusCodePropertyInfo where
+    type AttrAllowedOps URIResponseStatusCodePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint URIResponseStatusCodePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint URIResponseStatusCodePropertyInfo = URIResponseK
+    type AttrGetType URIResponseStatusCodePropertyInfo = Word32
+    type AttrLabel URIResponseStatusCodePropertyInfo = "URIResponse::status-code"
+    attrGet _ = getURIResponseStatusCode
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "suggested-filename"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getURIResponseSuggestedFilename :: (MonadIO m, URIResponseK o) => o -> m T.Text
+getURIResponseSuggestedFilename obj = liftIO $ getObjectPropertyString obj "suggested-filename"
+
+data URIResponseSuggestedFilenamePropertyInfo
+instance AttrInfo URIResponseSuggestedFilenamePropertyInfo where
+    type AttrAllowedOps URIResponseSuggestedFilenamePropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint URIResponseSuggestedFilenamePropertyInfo = (~) ()
+    type AttrBaseTypeConstraint URIResponseSuggestedFilenamePropertyInfo = URIResponseK
+    type AttrGetType URIResponseSuggestedFilenamePropertyInfo = T.Text
+    type AttrLabel URIResponseSuggestedFilenamePropertyInfo = "URIResponse::suggested-filename"
+    attrGet _ = getURIResponseSuggestedFilename
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+-- VVV Prop "uri"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getURIResponseUri :: (MonadIO m, URIResponseK o) => o -> m T.Text
+getURIResponseUri obj = liftIO $ getObjectPropertyString obj "uri"
+
+data URIResponseUriPropertyInfo
+instance AttrInfo URIResponseUriPropertyInfo where
+    type AttrAllowedOps URIResponseUriPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint URIResponseUriPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint URIResponseUriPropertyInfo = URIResponseK
+    type AttrGetType URIResponseUriPropertyInfo = T.Text
+    type AttrLabel URIResponseUriPropertyInfo = "URIResponse::uri"
+    attrGet _ = getURIResponseUri
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList URIResponse = URIResponseAttributeList
+type URIResponseAttributeList = ('[ '("content-length", URIResponseContentLengthPropertyInfo), '("http-headers", URIResponseHttpHeadersPropertyInfo), '("mime-type", URIResponseMimeTypePropertyInfo), '("status-code", URIResponseStatusCodePropertyInfo), '("suggested-filename", URIResponseSuggestedFilenamePropertyInfo), '("uri", URIResponseUriPropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList URIResponse = URIResponseSignalList
+type URIResponseSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method URIResponse::get_content_length
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIResponse", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIResponse", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_uri_response_get_content_length" webkit_uri_response_get_content_length :: 
+    Ptr URIResponse ->                      -- _obj : TInterface "WebKit2WebExtension" "URIResponse"
+    IO Word64
+
+
+uRIResponseGetContentLength ::
+    (MonadIO m, URIResponseK a) =>
+    a ->                                    -- _obj
+    m Word64
+uRIResponseGetContentLength _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_uri_response_get_content_length _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method URIResponse::get_http_headers
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIResponse", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIResponse", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "Soup" "MessageHeaders"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_uri_response_get_http_headers" webkit_uri_response_get_http_headers :: 
+    Ptr URIResponse ->                      -- _obj : TInterface "WebKit2WebExtension" "URIResponse"
+    IO (Ptr Soup.MessageHeaders)
+
+
+uRIResponseGetHttpHeaders ::
+    (MonadIO m, URIResponseK a) =>
+    a ->                                    -- _obj
+    m Soup.MessageHeaders
+uRIResponseGetHttpHeaders _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_uri_response_get_http_headers _obj'
+    checkUnexpectedReturnNULL "webkit_uri_response_get_http_headers" result
+    result' <- (wrapBoxed Soup.MessageHeaders) result
+    touchManagedPtr _obj
+    return result'
+
+-- method URIResponse::get_mime_type
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIResponse", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIResponse", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_uri_response_get_mime_type" webkit_uri_response_get_mime_type :: 
+    Ptr URIResponse ->                      -- _obj : TInterface "WebKit2WebExtension" "URIResponse"
+    IO CString
+
+
+uRIResponseGetMimeType ::
+    (MonadIO m, URIResponseK a) =>
+    a ->                                    -- _obj
+    m T.Text
+uRIResponseGetMimeType _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_uri_response_get_mime_type _obj'
+    checkUnexpectedReturnNULL "webkit_uri_response_get_mime_type" result
+    result' <- cstringToText result
+    touchManagedPtr _obj
+    return result'
+
+-- method URIResponse::get_status_code
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIResponse", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIResponse", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt32
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_uri_response_get_status_code" webkit_uri_response_get_status_code :: 
+    Ptr URIResponse ->                      -- _obj : TInterface "WebKit2WebExtension" "URIResponse"
+    IO Word32
+
+
+uRIResponseGetStatusCode ::
+    (MonadIO m, URIResponseK a) =>
+    a ->                                    -- _obj
+    m Word32
+uRIResponseGetStatusCode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_uri_response_get_status_code _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method URIResponse::get_suggested_filename
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIResponse", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIResponse", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_uri_response_get_suggested_filename" webkit_uri_response_get_suggested_filename :: 
+    Ptr URIResponse ->                      -- _obj : TInterface "WebKit2WebExtension" "URIResponse"
+    IO CString
+
+
+uRIResponseGetSuggestedFilename ::
+    (MonadIO m, URIResponseK a) =>
+    a ->                                    -- _obj
+    m T.Text
+uRIResponseGetSuggestedFilename _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_uri_response_get_suggested_filename _obj'
+    checkUnexpectedReturnNULL "webkit_uri_response_get_suggested_filename" result
+    result' <- cstringToText result
+    touchManagedPtr _obj
+    return result'
+
+-- method URIResponse::get_uri
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIResponse", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "URIResponse", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_uri_response_get_uri" webkit_uri_response_get_uri :: 
+    Ptr URIResponse ->                      -- _obj : TInterface "WebKit2WebExtension" "URIResponse"
+    IO CString
+
+
+uRIResponseGetUri ::
+    (MonadIO m, URIResponseK a) =>
+    a ->                                    -- _obj
+    m T.Text
+uRIResponseGetUri _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_uri_response_get_uri _obj'
+    checkUnexpectedReturnNULL "webkit_uri_response_get_uri" result
+    result' <- cstringToText result
+    touchManagedPtr _obj
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/URIResponse.hs-boot b/GI/WebKit2WebExtension/Objects/URIResponse.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/URIResponse.hs-boot
@@ -0,0 +1,19 @@
+module GI.WebKit2WebExtension.Objects.URIResponse where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype URIResponse = URIResponse (ForeignPtr URIResponse)
+instance GObject URIResponse where
+class GObject o => URIResponseK o
+instance (GObject o, IsDescendantOf URIResponse o) => URIResponseK o
+data URIResponseContentLengthPropertyInfo
+data URIResponseHttpHeadersPropertyInfo
+data URIResponseMimeTypePropertyInfo
+data URIResponseStatusCodePropertyInfo
+data URIResponseSuggestedFilenamePropertyInfo
+data URIResponseUriPropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/WebExtension.hs b/GI/WebKit2WebExtension/Objects/WebExtension.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/WebExtension.hs
@@ -0,0 +1,155 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.WebExtension
+    ( 
+
+-- * Exported types
+    WebExtension(..)                        ,
+    WebExtensionK                           ,
+    toWebExtension                          ,
+    noWebExtension                          ,
+
+
+ -- * Methods
+-- ** webExtensionGetPage
+    webExtensionGetPage                     ,
+
+
+
+
+ -- * Signals
+-- ** PageCreated
+    WebExtensionPageCreatedCallback         ,
+    WebExtensionPageCreatedCallbackC        ,
+    WebExtensionPageCreatedSignalInfo       ,
+    afterWebExtensionPageCreated            ,
+    mkWebExtensionPageCreatedCallback       ,
+    noWebExtensionPageCreatedCallback       ,
+    onWebExtensionPageCreated               ,
+    webExtensionPageCreatedCallbackWrapper  ,
+    webExtensionPageCreatedClosure          ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype WebExtension = WebExtension (ForeignPtr WebExtension)
+foreign import ccall "webkit_web_extension_get_type"
+    c_webkit_web_extension_get_type :: IO GType
+
+type instance ParentTypes WebExtension = WebExtensionParentTypes
+type WebExtensionParentTypes = '[GObject.Object]
+
+instance GObject WebExtension where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_web_extension_get_type
+    
+
+class GObject o => WebExtensionK o
+instance (GObject o, IsDescendantOf WebExtension o) => WebExtensionK o
+
+toWebExtension :: WebExtensionK o => o -> IO WebExtension
+toWebExtension = unsafeCastTo WebExtension
+
+noWebExtension :: Maybe WebExtension
+noWebExtension = Nothing
+
+-- signal WebExtension::page-created
+type WebExtensionPageCreatedCallback =
+    WebPage ->
+    IO ()
+
+noWebExtensionPageCreatedCallback :: Maybe WebExtensionPageCreatedCallback
+noWebExtensionPageCreatedCallback = Nothing
+
+type WebExtensionPageCreatedCallbackC =
+    Ptr () ->                               -- object
+    Ptr WebPage ->
+    Ptr () ->                               -- user_data
+    IO ()
+
+foreign import ccall "wrapper"
+    mkWebExtensionPageCreatedCallback :: WebExtensionPageCreatedCallbackC -> IO (FunPtr WebExtensionPageCreatedCallbackC)
+
+webExtensionPageCreatedClosure :: WebExtensionPageCreatedCallback -> IO Closure
+webExtensionPageCreatedClosure cb = newCClosure =<< mkWebExtensionPageCreatedCallback wrapped
+    where wrapped = webExtensionPageCreatedCallbackWrapper cb
+
+webExtensionPageCreatedCallbackWrapper ::
+    WebExtensionPageCreatedCallback ->
+    Ptr () ->
+    Ptr WebPage ->
+    Ptr () ->
+    IO ()
+webExtensionPageCreatedCallbackWrapper _cb _ web_page _ = do
+    web_page' <- (newObject WebPage) web_page
+    _cb  web_page'
+
+onWebExtensionPageCreated :: (GObject a, MonadIO m) => a -> WebExtensionPageCreatedCallback -> m SignalHandlerId
+onWebExtensionPageCreated obj cb = liftIO $ connectWebExtensionPageCreated obj cb SignalConnectBefore
+afterWebExtensionPageCreated :: (GObject a, MonadIO m) => a -> WebExtensionPageCreatedCallback -> m SignalHandlerId
+afterWebExtensionPageCreated obj cb = connectWebExtensionPageCreated obj cb SignalConnectAfter
+
+connectWebExtensionPageCreated :: (GObject a, MonadIO m) =>
+                                  a -> WebExtensionPageCreatedCallback -> SignalConnectMode -> m SignalHandlerId
+connectWebExtensionPageCreated obj cb after = liftIO $ do
+    cb' <- mkWebExtensionPageCreatedCallback (webExtensionPageCreatedCallbackWrapper cb)
+    connectSignalFunPtr obj "page-created" cb' after
+
+type instance AttributeList WebExtension = WebExtensionAttributeList
+type WebExtensionAttributeList = ('[ ] :: [(Symbol, *)])
+
+data WebExtensionPageCreatedSignalInfo
+instance SignalInfo WebExtensionPageCreatedSignalInfo where
+    type HaskellCallbackType WebExtensionPageCreatedSignalInfo = WebExtensionPageCreatedCallback
+    connectSignal _ = connectWebExtensionPageCreated
+
+type instance SignalList WebExtension = WebExtensionSignalList
+type WebExtensionSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("page-created", WebExtensionPageCreatedSignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method WebExtension::get_page
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "WebExtension", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "page_id", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "WebExtension", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing},Arg {argName = "page_id", argType = TBasicType TUInt64, direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "WebPage"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_web_extension_get_page" webkit_web_extension_get_page :: 
+    Ptr WebExtension ->                     -- _obj : TInterface "WebKit2WebExtension" "WebExtension"
+    Word64 ->                               -- page_id : TBasicType TUInt64
+    IO (Ptr WebPage)
+
+
+webExtensionGetPage ::
+    (MonadIO m, WebExtensionK a) =>
+    a ->                                    -- _obj
+    Word64 ->                               -- page_id
+    m WebPage
+webExtensionGetPage _obj page_id = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_web_extension_get_page _obj' page_id
+    checkUnexpectedReturnNULL "webkit_web_extension_get_page" result
+    result' <- (newObject WebPage) result
+    touchManagedPtr _obj
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/WebExtension.hs-boot b/GI/WebKit2WebExtension/Objects/WebExtension.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/WebExtension.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.WebExtension where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype WebExtension = WebExtension (ForeignPtr WebExtension)
+instance GObject WebExtension where
+class GObject o => WebExtensionK o
+instance (GObject o, IsDescendantOf WebExtension o) => WebExtensionK o
+data WebExtensionPageCreatedSignalInfo
diff --git a/GI/WebKit2WebExtension/Objects/WebHitTestResult.hs b/GI/WebKit2WebExtension/Objects/WebHitTestResult.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/WebHitTestResult.hs
@@ -0,0 +1,121 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.WebHitTestResult
+    ( 
+
+-- * Exported types
+    WebHitTestResult(..)                    ,
+    WebHitTestResultK                       ,
+    toWebHitTestResult                      ,
+    noWebHitTestResult                      ,
+
+
+ -- * Methods
+-- ** webHitTestResultGetNode
+    webHitTestResultGetNode                 ,
+
+
+
+
+ -- * Properties
+-- ** Node
+    WebHitTestResultNodePropertyInfo        ,
+    constructWebHitTestResultNode           ,
+    getWebHitTestResultNode                 ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype WebHitTestResult = WebHitTestResult (ForeignPtr WebHitTestResult)
+foreign import ccall "webkit_web_hit_test_result_get_type"
+    c_webkit_web_hit_test_result_get_type :: IO GType
+
+type instance ParentTypes WebHitTestResult = WebHitTestResultParentTypes
+type WebHitTestResultParentTypes = '[HitTestResult, GObject.Object]
+
+instance GObject WebHitTestResult where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_web_hit_test_result_get_type
+    
+
+class GObject o => WebHitTestResultK o
+instance (GObject o, IsDescendantOf WebHitTestResult o) => WebHitTestResultK o
+
+toWebHitTestResult :: WebHitTestResultK o => o -> IO WebHitTestResult
+toWebHitTestResult = unsafeCastTo WebHitTestResult
+
+noWebHitTestResult :: Maybe WebHitTestResult
+noWebHitTestResult = Nothing
+
+-- VVV Prop "node"
+   -- Type: TInterface "WebKit2WebExtension" "DOMNode"
+   -- Flags: [PropertyReadable,PropertyWritable,PropertyConstructOnly]
+
+getWebHitTestResultNode :: (MonadIO m, WebHitTestResultK o) => o -> m DOMNode
+getWebHitTestResultNode obj = liftIO $ getObjectPropertyObject obj "node" DOMNode
+
+constructWebHitTestResultNode :: (DOMNodeK a) => a -> IO ([Char], GValue)
+constructWebHitTestResultNode val = constructObjectPropertyObject "node" val
+
+data WebHitTestResultNodePropertyInfo
+instance AttrInfo WebHitTestResultNodePropertyInfo where
+    type AttrAllowedOps WebHitTestResultNodePropertyInfo = '[ 'AttrConstruct, 'AttrGet]
+    type AttrSetTypeConstraint WebHitTestResultNodePropertyInfo = DOMNodeK
+    type AttrBaseTypeConstraint WebHitTestResultNodePropertyInfo = WebHitTestResultK
+    type AttrGetType WebHitTestResultNodePropertyInfo = DOMNode
+    type AttrLabel WebHitTestResultNodePropertyInfo = "WebHitTestResult::node"
+    attrGet _ = getWebHitTestResultNode
+    attrSet _ = undefined
+    attrConstruct _ = constructWebHitTestResultNode
+
+type instance AttributeList WebHitTestResult = WebHitTestResultAttributeList
+type WebHitTestResultAttributeList = ('[ '("context", HitTestResultContextPropertyInfo), '("image-uri", HitTestResultImageUriPropertyInfo), '("link-label", HitTestResultLinkLabelPropertyInfo), '("link-title", HitTestResultLinkTitlePropertyInfo), '("link-uri", HitTestResultLinkUriPropertyInfo), '("media-uri", HitTestResultMediaUriPropertyInfo), '("node", WebHitTestResultNodePropertyInfo)] :: [(Symbol, *)])
+
+type instance SignalList WebHitTestResult = WebHitTestResultSignalList
+type WebHitTestResultSignalList = ('[ '("notify", GObject.ObjectNotifySignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method WebHitTestResult::get_node
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "WebHitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "WebHitTestResult", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMNode"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_web_hit_test_result_get_node" webkit_web_hit_test_result_get_node :: 
+    Ptr WebHitTestResult ->                 -- _obj : TInterface "WebKit2WebExtension" "WebHitTestResult"
+    IO (Ptr DOMNode)
+
+
+webHitTestResultGetNode ::
+    (MonadIO m, WebHitTestResultK a) =>
+    a ->                                    -- _obj
+    m DOMNode
+webHitTestResultGetNode _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_web_hit_test_result_get_node _obj'
+    checkUnexpectedReturnNULL "webkit_web_hit_test_result_get_node" result
+    result' <- (newObject DOMNode) result
+    touchManagedPtr _obj
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/WebHitTestResult.hs-boot b/GI/WebKit2WebExtension/Objects/WebHitTestResult.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/WebHitTestResult.hs-boot
@@ -0,0 +1,14 @@
+module GI.WebKit2WebExtension.Objects.WebHitTestResult where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype WebHitTestResult = WebHitTestResult (ForeignPtr WebHitTestResult)
+instance GObject WebHitTestResult where
+class GObject o => WebHitTestResultK o
+instance (GObject o, IsDescendantOf WebHitTestResult o) => WebHitTestResultK o
+data WebHitTestResultNodePropertyInfo
diff --git a/GI/WebKit2WebExtension/Objects/WebPage.hs b/GI/WebKit2WebExtension/Objects/WebPage.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/WebPage.hs
@@ -0,0 +1,393 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Objects.WebPage
+    ( 
+
+-- * Exported types
+    WebPage(..)                             ,
+    WebPageK                                ,
+    toWebPage                               ,
+    noWebPage                               ,
+
+
+ -- * Methods
+-- ** webPageGetDomDocument
+    webPageGetDomDocument                   ,
+
+
+-- ** webPageGetId
+    webPageGetId                            ,
+
+
+-- ** webPageGetMainFrame
+    webPageGetMainFrame                     ,
+
+
+-- ** webPageGetUri
+    webPageGetUri                           ,
+
+
+
+
+ -- * Properties
+-- ** Uri
+    WebPageUriPropertyInfo                  ,
+    getWebPageUri                           ,
+
+
+
+
+ -- * Signals
+-- ** ContextMenu
+    WebPageContextMenuCallback              ,
+    WebPageContextMenuCallbackC             ,
+    WebPageContextMenuSignalInfo            ,
+    afterWebPageContextMenu                 ,
+    mkWebPageContextMenuCallback            ,
+    noWebPageContextMenuCallback            ,
+    onWebPageContextMenu                    ,
+    webPageContextMenuCallbackWrapper       ,
+    webPageContextMenuClosure               ,
+
+
+-- ** DocumentLoaded
+    WebPageDocumentLoadedCallback           ,
+    WebPageDocumentLoadedCallbackC          ,
+    WebPageDocumentLoadedSignalInfo         ,
+    afterWebPageDocumentLoaded              ,
+    mkWebPageDocumentLoadedCallback         ,
+    noWebPageDocumentLoadedCallback         ,
+    onWebPageDocumentLoaded                 ,
+    webPageDocumentLoadedCallbackWrapper    ,
+    webPageDocumentLoadedClosure            ,
+
+
+-- ** SendRequest
+    WebPageSendRequestCallback              ,
+    WebPageSendRequestCallbackC             ,
+    WebPageSendRequestSignalInfo            ,
+    afterWebPageSendRequest                 ,
+    mkWebPageSendRequestCallback            ,
+    noWebPageSendRequestCallback            ,
+    onWebPageSendRequest                    ,
+    webPageSendRequestCallbackWrapper       ,
+    webPageSendRequestClosure               ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype WebPage = WebPage (ForeignPtr WebPage)
+foreign import ccall "webkit_web_page_get_type"
+    c_webkit_web_page_get_type :: IO GType
+
+type instance ParentTypes WebPage = WebPageParentTypes
+type WebPageParentTypes = '[GObject.Object]
+
+instance GObject WebPage where
+    gobjectIsInitiallyUnowned _ = False
+    gobjectType _ = c_webkit_web_page_get_type
+    
+
+class GObject o => WebPageK o
+instance (GObject o, IsDescendantOf WebPage o) => WebPageK o
+
+toWebPage :: WebPageK o => o -> IO WebPage
+toWebPage = unsafeCastTo WebPage
+
+noWebPage :: Maybe WebPage
+noWebPage = Nothing
+
+-- signal WebPage::context-menu
+type WebPageContextMenuCallback =
+    ContextMenu ->
+    WebHitTestResult ->
+    IO Bool
+
+noWebPageContextMenuCallback :: Maybe WebPageContextMenuCallback
+noWebPageContextMenuCallback = Nothing
+
+type WebPageContextMenuCallbackC =
+    Ptr () ->                               -- object
+    Ptr ContextMenu ->
+    Ptr WebHitTestResult ->
+    Ptr () ->                               -- user_data
+    IO CInt
+
+foreign import ccall "wrapper"
+    mkWebPageContextMenuCallback :: WebPageContextMenuCallbackC -> IO (FunPtr WebPageContextMenuCallbackC)
+
+webPageContextMenuClosure :: WebPageContextMenuCallback -> IO Closure
+webPageContextMenuClosure cb = newCClosure =<< mkWebPageContextMenuCallback wrapped
+    where wrapped = webPageContextMenuCallbackWrapper cb
+
+webPageContextMenuCallbackWrapper ::
+    WebPageContextMenuCallback ->
+    Ptr () ->
+    Ptr ContextMenu ->
+    Ptr WebHitTestResult ->
+    Ptr () ->
+    IO CInt
+webPageContextMenuCallbackWrapper _cb _ context_menu hit_test_result _ = do
+    context_menu' <- (newObject ContextMenu) context_menu
+    hit_test_result' <- (newObject WebHitTestResult) hit_test_result
+    result <- _cb  context_menu' hit_test_result'
+    let result' = (fromIntegral . fromEnum) result
+    return result'
+
+onWebPageContextMenu :: (GObject a, MonadIO m) => a -> WebPageContextMenuCallback -> m SignalHandlerId
+onWebPageContextMenu obj cb = liftIO $ connectWebPageContextMenu obj cb SignalConnectBefore
+afterWebPageContextMenu :: (GObject a, MonadIO m) => a -> WebPageContextMenuCallback -> m SignalHandlerId
+afterWebPageContextMenu obj cb = connectWebPageContextMenu obj cb SignalConnectAfter
+
+connectWebPageContextMenu :: (GObject a, MonadIO m) =>
+                             a -> WebPageContextMenuCallback -> SignalConnectMode -> m SignalHandlerId
+connectWebPageContextMenu obj cb after = liftIO $ do
+    cb' <- mkWebPageContextMenuCallback (webPageContextMenuCallbackWrapper cb)
+    connectSignalFunPtr obj "context-menu" cb' after
+
+-- signal WebPage::document-loaded
+type WebPageDocumentLoadedCallback =
+    IO ()
+
+noWebPageDocumentLoadedCallback :: Maybe WebPageDocumentLoadedCallback
+noWebPageDocumentLoadedCallback = Nothing
+
+type WebPageDocumentLoadedCallbackC =
+    Ptr () ->                               -- object
+    Ptr () ->                               -- user_data
+    IO ()
+
+foreign import ccall "wrapper"
+    mkWebPageDocumentLoadedCallback :: WebPageDocumentLoadedCallbackC -> IO (FunPtr WebPageDocumentLoadedCallbackC)
+
+webPageDocumentLoadedClosure :: WebPageDocumentLoadedCallback -> IO Closure
+webPageDocumentLoadedClosure cb = newCClosure =<< mkWebPageDocumentLoadedCallback wrapped
+    where wrapped = webPageDocumentLoadedCallbackWrapper cb
+
+webPageDocumentLoadedCallbackWrapper ::
+    WebPageDocumentLoadedCallback ->
+    Ptr () ->
+    Ptr () ->
+    IO ()
+webPageDocumentLoadedCallbackWrapper _cb _ _ = do
+    _cb 
+
+onWebPageDocumentLoaded :: (GObject a, MonadIO m) => a -> WebPageDocumentLoadedCallback -> m SignalHandlerId
+onWebPageDocumentLoaded obj cb = liftIO $ connectWebPageDocumentLoaded obj cb SignalConnectBefore
+afterWebPageDocumentLoaded :: (GObject a, MonadIO m) => a -> WebPageDocumentLoadedCallback -> m SignalHandlerId
+afterWebPageDocumentLoaded obj cb = connectWebPageDocumentLoaded obj cb SignalConnectAfter
+
+connectWebPageDocumentLoaded :: (GObject a, MonadIO m) =>
+                                a -> WebPageDocumentLoadedCallback -> SignalConnectMode -> m SignalHandlerId
+connectWebPageDocumentLoaded obj cb after = liftIO $ do
+    cb' <- mkWebPageDocumentLoadedCallback (webPageDocumentLoadedCallbackWrapper cb)
+    connectSignalFunPtr obj "document-loaded" cb' after
+
+-- signal WebPage::send-request
+type WebPageSendRequestCallback =
+    URIRequest ->
+    URIResponse ->
+    IO Bool
+
+noWebPageSendRequestCallback :: Maybe WebPageSendRequestCallback
+noWebPageSendRequestCallback = Nothing
+
+type WebPageSendRequestCallbackC =
+    Ptr () ->                               -- object
+    Ptr URIRequest ->
+    Ptr URIResponse ->
+    Ptr () ->                               -- user_data
+    IO CInt
+
+foreign import ccall "wrapper"
+    mkWebPageSendRequestCallback :: WebPageSendRequestCallbackC -> IO (FunPtr WebPageSendRequestCallbackC)
+
+webPageSendRequestClosure :: WebPageSendRequestCallback -> IO Closure
+webPageSendRequestClosure cb = newCClosure =<< mkWebPageSendRequestCallback wrapped
+    where wrapped = webPageSendRequestCallbackWrapper cb
+
+webPageSendRequestCallbackWrapper ::
+    WebPageSendRequestCallback ->
+    Ptr () ->
+    Ptr URIRequest ->
+    Ptr URIResponse ->
+    Ptr () ->
+    IO CInt
+webPageSendRequestCallbackWrapper _cb _ request redirected_response _ = do
+    request' <- (newObject URIRequest) request
+    redirected_response' <- (newObject URIResponse) redirected_response
+    result <- _cb  request' redirected_response'
+    let result' = (fromIntegral . fromEnum) result
+    return result'
+
+onWebPageSendRequest :: (GObject a, MonadIO m) => a -> WebPageSendRequestCallback -> m SignalHandlerId
+onWebPageSendRequest obj cb = liftIO $ connectWebPageSendRequest obj cb SignalConnectBefore
+afterWebPageSendRequest :: (GObject a, MonadIO m) => a -> WebPageSendRequestCallback -> m SignalHandlerId
+afterWebPageSendRequest obj cb = connectWebPageSendRequest obj cb SignalConnectAfter
+
+connectWebPageSendRequest :: (GObject a, MonadIO m) =>
+                             a -> WebPageSendRequestCallback -> SignalConnectMode -> m SignalHandlerId
+connectWebPageSendRequest obj cb after = liftIO $ do
+    cb' <- mkWebPageSendRequestCallback (webPageSendRequestCallbackWrapper cb)
+    connectSignalFunPtr obj "send-request" cb' after
+
+-- VVV Prop "uri"
+   -- Type: TBasicType TUTF8
+   -- Flags: [PropertyReadable]
+
+getWebPageUri :: (MonadIO m, WebPageK o) => o -> m T.Text
+getWebPageUri obj = liftIO $ getObjectPropertyString obj "uri"
+
+data WebPageUriPropertyInfo
+instance AttrInfo WebPageUriPropertyInfo where
+    type AttrAllowedOps WebPageUriPropertyInfo = '[ 'AttrGet]
+    type AttrSetTypeConstraint WebPageUriPropertyInfo = (~) ()
+    type AttrBaseTypeConstraint WebPageUriPropertyInfo = WebPageK
+    type AttrGetType WebPageUriPropertyInfo = T.Text
+    type AttrLabel WebPageUriPropertyInfo = "WebPage::uri"
+    attrGet _ = getWebPageUri
+    attrSet _ = undefined
+    attrConstruct _ = undefined
+
+type instance AttributeList WebPage = WebPageAttributeList
+type WebPageAttributeList = ('[ '("uri", WebPageUriPropertyInfo)] :: [(Symbol, *)])
+
+data WebPageContextMenuSignalInfo
+instance SignalInfo WebPageContextMenuSignalInfo where
+    type HaskellCallbackType WebPageContextMenuSignalInfo = WebPageContextMenuCallback
+    connectSignal _ = connectWebPageContextMenu
+
+data WebPageDocumentLoadedSignalInfo
+instance SignalInfo WebPageDocumentLoadedSignalInfo where
+    type HaskellCallbackType WebPageDocumentLoadedSignalInfo = WebPageDocumentLoadedCallback
+    connectSignal _ = connectWebPageDocumentLoaded
+
+data WebPageSendRequestSignalInfo
+instance SignalInfo WebPageSendRequestSignalInfo where
+    type HaskellCallbackType WebPageSendRequestSignalInfo = WebPageSendRequestCallback
+    connectSignal _ = connectWebPageSendRequest
+
+type instance SignalList WebPage = WebPageSignalList
+type WebPageSignalList = ('[ '("context-menu", WebPageContextMenuSignalInfo), '("document-loaded", WebPageDocumentLoadedSignalInfo), '("notify", GObject.ObjectNotifySignalInfo), '("send-request", WebPageSendRequestSignalInfo), '("notify::[property]", GObjectNotifySignalInfo)] :: [(Symbol, *)])
+
+-- method WebPage::get_dom_document
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "WebPage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "WebPage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "DOMDocument"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_web_page_get_dom_document" webkit_web_page_get_dom_document :: 
+    Ptr WebPage ->                          -- _obj : TInterface "WebKit2WebExtension" "WebPage"
+    IO (Ptr DOMDocument)
+
+
+webPageGetDomDocument ::
+    (MonadIO m, WebPageK a) =>
+    a ->                                    -- _obj
+    m DOMDocument
+webPageGetDomDocument _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_web_page_get_dom_document _obj'
+    checkUnexpectedReturnNULL "webkit_web_page_get_dom_document" result
+    result' <- (newObject DOMDocument) result
+    touchManagedPtr _obj
+    return result'
+
+-- method WebPage::get_id
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "WebPage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "WebPage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUInt64
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_web_page_get_id" webkit_web_page_get_id :: 
+    Ptr WebPage ->                          -- _obj : TInterface "WebKit2WebExtension" "WebPage"
+    IO Word64
+
+
+webPageGetId ::
+    (MonadIO m, WebPageK a) =>
+    a ->                                    -- _obj
+    m Word64
+webPageGetId _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_web_page_get_id _obj'
+    touchManagedPtr _obj
+    return result
+
+-- method WebPage::get_main_frame
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "WebPage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "WebPage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TInterface "WebKit2WebExtension" "Frame"
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_web_page_get_main_frame" webkit_web_page_get_main_frame :: 
+    Ptr WebPage ->                          -- _obj : TInterface "WebKit2WebExtension" "WebPage"
+    IO (Ptr Frame)
+
+
+webPageGetMainFrame ::
+    (MonadIO m, WebPageK a) =>
+    a ->                                    -- _obj
+    m Frame
+webPageGetMainFrame _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_web_page_get_main_frame _obj'
+    checkUnexpectedReturnNULL "webkit_web_page_get_main_frame" result
+    result' <- (newObject Frame) result
+    touchManagedPtr _obj
+    return result'
+
+-- method WebPage::get_uri
+-- method type : OrdinaryMethod
+-- Args : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "WebPage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- Lengths : []
+-- hInArgs : [Arg {argName = "_obj", argType = TInterface "WebKit2WebExtension" "WebPage", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
+-- returnType : TBasicType TUTF8
+-- throws : False
+-- Skip return : False
+
+foreign import ccall "webkit_web_page_get_uri" webkit_web_page_get_uri :: 
+    Ptr WebPage ->                          -- _obj : TInterface "WebKit2WebExtension" "WebPage"
+    IO CString
+
+
+webPageGetUri ::
+    (MonadIO m, WebPageK a) =>
+    a ->                                    -- _obj
+    m T.Text
+webPageGetUri _obj = liftIO $ do
+    let _obj' = unsafeManagedPtrCastPtr _obj
+    result <- webkit_web_page_get_uri _obj'
+    checkUnexpectedReturnNULL "webkit_web_page_get_uri" result
+    result' <- cstringToText result
+    touchManagedPtr _obj
+    return result'
+
+
diff --git a/GI/WebKit2WebExtension/Objects/WebPage.hs-boot b/GI/WebKit2WebExtension/Objects/WebPage.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Objects/WebPage.hs-boot
@@ -0,0 +1,17 @@
+module GI.WebKit2WebExtension.Objects.WebPage where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype WebPage = WebPage (ForeignPtr WebPage)
+instance GObject WebPage where
+class GObject o => WebPageK o
+instance (GObject o, IsDescendantOf WebPage o) => WebPageK o
+data WebPageUriPropertyInfo
+data WebPageContextMenuSignalInfo
+data WebPageDocumentLoadedSignalInfo
+data WebPageSendRequestSignalInfo
diff --git a/GI/WebKit2WebExtension/Structs.hs b/GI/WebKit2WebExtension/Structs.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Structs.hs
@@ -0,0 +1,28 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Structs
+    (     module GI.WebKit2WebExtension.Structs.ContextMenuItem_,
+    module GI.WebKit2WebExtension.Structs.ContextMenu_,
+
+
+    ) where
+
+import GI.WebKit2WebExtension.Structs.ContextMenuItem_
+import GI.WebKit2WebExtension.Structs.ContextMenu_
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+
+
diff --git a/GI/WebKit2WebExtension/Structs/ContextMenuItem_.hs b/GI/WebKit2WebExtension/Structs/ContextMenuItem_.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Structs/ContextMenuItem_.hs
@@ -0,0 +1,47 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Structs.ContextMenuItem_
+    ( 
+
+-- * Exported types
+    ContextMenuItem_(..)                    ,
+    noContextMenuItem_                      ,
+
+
+ -- * Properties
+-- ** Parent
+    contextMenuItem_ReadParent              ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype ContextMenuItem_ = ContextMenuItem_ (ForeignPtr ContextMenuItem_)
+noContextMenuItem_ :: Maybe ContextMenuItem_
+noContextMenuItem_ = Nothing
+
+contextMenuItem_ReadParent :: ContextMenuItem_ -> IO GObject.InitiallyUnowned
+contextMenuItem_ReadParent s = withManagedPtr s $ \ptr -> do
+    val <- peek (ptr `plusPtr` 0) :: IO (Ptr GObject.InitiallyUnowned)
+    val' <- (newObject GObject.InitiallyUnowned) val
+    return val'
+
+
+
diff --git a/GI/WebKit2WebExtension/Structs/ContextMenuItem_.hs-boot b/GI/WebKit2WebExtension/Structs/ContextMenuItem_.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Structs/ContextMenuItem_.hs-boot
@@ -0,0 +1,10 @@
+module GI.WebKit2WebExtension.Structs.ContextMenuItem_ where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype ContextMenuItem_ = ContextMenuItem_ (ForeignPtr ContextMenuItem_)
diff --git a/GI/WebKit2WebExtension/Structs/ContextMenu_.hs b/GI/WebKit2WebExtension/Structs/ContextMenu_.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Structs/ContextMenu_.hs
@@ -0,0 +1,47 @@
+
+{- |
+Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
+License    : LGPL-2.1
+Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
+-}
+
+module GI.WebKit2WebExtension.Structs.ContextMenu_
+    ( 
+
+-- * Exported types
+    ContextMenu_(..)                        ,
+    noContextMenu_                          ,
+
+
+ -- * Properties
+-- ** Parent
+    contextMenu_ReadParent                  ,
+
+
+
+
+    ) where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+import GI.WebKit2WebExtension.Types
+import GI.WebKit2WebExtension.Callbacks
+import qualified GI.GObject as GObject
+
+newtype ContextMenu_ = ContextMenu_ (ForeignPtr ContextMenu_)
+noContextMenu_ :: Maybe ContextMenu_
+noContextMenu_ = Nothing
+
+contextMenu_ReadParent :: ContextMenu_ -> IO GObject.Object
+contextMenu_ReadParent s = withManagedPtr s $ \ptr -> do
+    val <- peek (ptr `plusPtr` 0) :: IO (Ptr GObject.Object)
+    val' <- (newObject GObject.Object) val
+    return val'
+
+
+
diff --git a/GI/WebKit2WebExtension/Structs/ContextMenu_.hs-boot b/GI/WebKit2WebExtension/Structs/ContextMenu_.hs-boot
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Structs/ContextMenu_.hs-boot
@@ -0,0 +1,10 @@
+module GI.WebKit2WebExtension.Structs.ContextMenu_ where
+
+import Prelude ()
+import Data.GI.Base.ShortPrelude
+
+import qualified Data.Text as T
+import qualified Data.ByteString.Char8 as B
+import qualified Data.Map as Map
+
+newtype ContextMenu_ = ContextMenu_ (ForeignPtr ContextMenu_)
diff --git a/GI/WebKit2WebExtension/Types.hs b/GI/WebKit2WebExtension/Types.hs
new file mode 100644
--- /dev/null
+++ b/GI/WebKit2WebExtension/Types.hs
@@ -0,0 +1,234 @@
+module GI.WebKit2WebExtension.Types
+    (     module GI.WebKit2WebExtension.Interfaces.DOMEventTarget,
+    module GI.WebKit2WebExtension.Interfaces.DOMNodeFilter,
+    module GI.WebKit2WebExtension.Interfaces.DOMXPathNSResolver,
+    module GI.WebKit2WebExtension.Objects.ContextMenu,
+    module GI.WebKit2WebExtension.Objects.ContextMenuItem,
+    module GI.WebKit2WebExtension.Objects.DOMAttr,
+    module GI.WebKit2WebExtension.Objects.DOMBlob,
+    module GI.WebKit2WebExtension.Objects.DOMCDATASection,
+    module GI.WebKit2WebExtension.Objects.DOMCSSRule,
+    module GI.WebKit2WebExtension.Objects.DOMCSSRuleList,
+    module GI.WebKit2WebExtension.Objects.DOMCSSStyleDeclaration,
+    module GI.WebKit2WebExtension.Objects.DOMCSSStyleSheet,
+    module GI.WebKit2WebExtension.Objects.DOMCSSValue,
+    module GI.WebKit2WebExtension.Objects.DOMCharacterData,
+    module GI.WebKit2WebExtension.Objects.DOMComment,
+    module GI.WebKit2WebExtension.Objects.DOMDOMImplementation,
+    module GI.WebKit2WebExtension.Objects.DOMDOMWindow,
+    module GI.WebKit2WebExtension.Objects.DOMDocument,
+    module GI.WebKit2WebExtension.Objects.DOMDocumentFragment,
+    module GI.WebKit2WebExtension.Objects.DOMDocumentType,
+    module GI.WebKit2WebExtension.Objects.DOMElement,
+    module GI.WebKit2WebExtension.Objects.DOMEntityReference,
+    module GI.WebKit2WebExtension.Objects.DOMEvent,
+    module GI.WebKit2WebExtension.Objects.DOMFile,
+    module GI.WebKit2WebExtension.Objects.DOMFileList,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLAnchorElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLAppletElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLAreaElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLBRElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLBaseElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLBaseFontElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLBodyElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLCanvasElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLCollection,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLDListElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLDirectoryElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLDivElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLDocument,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLEmbedElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLFieldSetElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLFontElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLFormElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLFrameElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLFrameSetElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLHRElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLHeadElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLHeadingElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLHtmlElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLIFrameElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLImageElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLInputElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLLIElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLLabelElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLLegendElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLLinkElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLMapElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLMarqueeElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLMenuElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLMetaElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLModElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLOListElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLObjectElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLOptGroupElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLOptionElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLOptionsCollection,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLParagraphElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLParamElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLPreElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLQuoteElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLScriptElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLStyleElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTableCaptionElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTableCellElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTableColElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTableElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTableRowElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTableSectionElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTextAreaElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLTitleElement,
+    module GI.WebKit2WebExtension.Objects.DOMHTMLUListElement,
+    module GI.WebKit2WebExtension.Objects.DOMKeyboardEvent,
+    module GI.WebKit2WebExtension.Objects.DOMMediaList,
+    module GI.WebKit2WebExtension.Objects.DOMMouseEvent,
+    module GI.WebKit2WebExtension.Objects.DOMNamedNodeMap,
+    module GI.WebKit2WebExtension.Objects.DOMNode,
+    module GI.WebKit2WebExtension.Objects.DOMNodeIterator,
+    module GI.WebKit2WebExtension.Objects.DOMNodeList,
+    module GI.WebKit2WebExtension.Objects.DOMObject,
+    module GI.WebKit2WebExtension.Objects.DOMProcessingInstruction,
+    module GI.WebKit2WebExtension.Objects.DOMRange,
+    module GI.WebKit2WebExtension.Objects.DOMStyleSheet,
+    module GI.WebKit2WebExtension.Objects.DOMStyleSheetList,
+    module GI.WebKit2WebExtension.Objects.DOMText,
+    module GI.WebKit2WebExtension.Objects.DOMTreeWalker,
+    module GI.WebKit2WebExtension.Objects.DOMUIEvent,
+    module GI.WebKit2WebExtension.Objects.DOMWheelEvent,
+    module GI.WebKit2WebExtension.Objects.DOMXPathExpression,
+    module GI.WebKit2WebExtension.Objects.DOMXPathResult,
+    module GI.WebKit2WebExtension.Objects.Frame,
+    module GI.WebKit2WebExtension.Objects.HitTestResult,
+    module GI.WebKit2WebExtension.Objects.ScriptWorld,
+    module GI.WebKit2WebExtension.Objects.URIRequest,
+    module GI.WebKit2WebExtension.Objects.URIResponse,
+    module GI.WebKit2WebExtension.Objects.WebExtension,
+    module GI.WebKit2WebExtension.Objects.WebHitTestResult,
+    module GI.WebKit2WebExtension.Objects.WebPage,
+    module GI.WebKit2WebExtension.Structs.ContextMenuItem_,
+    module GI.WebKit2WebExtension.Structs.ContextMenu_,
+    module GI.WebKit2WebExtension.Enums     ,
+    module GI.WebKit2WebExtension.Flags     ,
+
+
+    ) where
+
+
+import {-# SOURCE #-} GI.WebKit2WebExtension.Interfaces.DOMEventTarget
+import {-# SOURCE #-} GI.WebKit2WebExtension.Interfaces.DOMNodeFilter
+import {-# SOURCE #-} GI.WebKit2WebExtension.Interfaces.DOMXPathNSResolver
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.ContextMenu
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.ContextMenuItem
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMAttr
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMBlob
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMCDATASection
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMCSSRule
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMCSSRuleList
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMCSSStyleDeclaration
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMCSSStyleSheet
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMCSSValue
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMCharacterData
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMComment
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMDOMImplementation
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMDOMWindow
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMDocument
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMDocumentFragment
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMDocumentType
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMEntityReference
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMEvent
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMFile
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMFileList
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLAnchorElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLAppletElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLAreaElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLBRElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLBaseElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLBaseFontElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLBodyElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLCanvasElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLCollection
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLDListElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLDirectoryElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLDivElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLDocument
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLEmbedElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLFieldSetElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLFontElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLFormElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLFrameElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLFrameSetElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLHRElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLHeadElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLHeadingElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLHtmlElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLIFrameElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLImageElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLInputElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLLIElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLLabelElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLLegendElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLLinkElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLMapElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLMarqueeElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLMenuElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLMetaElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLModElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLOListElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLObjectElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLOptGroupElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLOptionElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLOptionsCollection
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLParagraphElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLParamElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLPreElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLQuoteElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLScriptElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLStyleElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLTableCaptionElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLTableCellElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLTableColElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLTableElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLTableRowElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLTableSectionElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLTextAreaElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLTitleElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMHTMLUListElement
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMKeyboardEvent
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMMediaList
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMMouseEvent
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMNamedNodeMap
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMNode
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMNodeIterator
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMNodeList
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMObject
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMProcessingInstruction
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMRange
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMStyleSheet
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMStyleSheetList
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMText
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMTreeWalker
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMUIEvent
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMWheelEvent
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMXPathExpression
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.DOMXPathResult
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.Frame
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.HitTestResult
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.ScriptWorld
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.URIRequest
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.URIResponse
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.WebExtension
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.WebHitTestResult
+import {-# SOURCE #-} GI.WebKit2WebExtension.Objects.WebPage
+import {-# SOURCE #-} GI.WebKit2WebExtension.Structs.ContextMenuItem_
+import {-# SOURCE #-} GI.WebKit2WebExtension.Structs.ContextMenu_
+
+import GI.WebKit2WebExtension.Enums
+import GI.WebKit2WebExtension.Flags
+
diff --git a/LICENSE b/LICENSE
new file mode 100644
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,456 @@
+                  GNU LESSER GENERAL PUBLIC LICENSE
+                       Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL.  It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+                            Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+  This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it.  You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+  When we speak of free software, we are referring to freedom of use,
+not price.  Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+  To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights.  These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+  For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you.  You must make sure that they, too, receive or can get the source
+code.  If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it.  And you must show them these terms so they know their rights.
+
+  We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+  To protect each distributor, we want to make it very clear that
+there is no warranty for the free library.  Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+  Finally, software patents pose a constant threat to the existence of
+any free program.  We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder.  Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+  Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License.  This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License.  We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+  When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library.  The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom.  The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+  We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License.  It also provides other free software developers Less
+of an advantage over competing non-free programs.  These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries.  However, the Lesser license provides advantages in certain
+special circumstances.
+
+  For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard.  To achieve this, non-free programs must be
+allowed to use the library.  A more frequent case is that a free
+library does the same job as widely used non-free libraries.  In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+  In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software.  For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+  Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.  Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library".  The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+                  GNU LESSER GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+  A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+  The "Library", below, refers to any such software library or work
+which has been distributed under these terms.  A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language.  (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+  "Source code" for a work means the preferred form of the work for
+making modifications to it.  For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+  Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it).  Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+  1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+  You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+  2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) The modified work must itself be a software library.
+
+    b) You must cause the files modified to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    c) You must cause the whole of the work to be licensed at no
+    charge to all third parties under the terms of this License.
+
+    d) If a facility in the modified Library refers to a function or a
+    table of data to be supplied by an application program that uses
+    the facility, other than as an argument passed when the facility
+    is invoked, then you must make a good faith effort to ensure that,
+    in the event an application does not supply such function or
+    table, the facility still operates, and performs whatever part of
+    its purpose remains meaningful.
+
+    (For example, a function in a library to compute square roots has
+    a purpose that is entirely well-defined independent of the
+    application.  Therefore, Subsection 2d requires that any
+    application-supplied function or table used by this function must
+    be optional: if the application does not supply it, the square
+    root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library.  To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License.  (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.)  Do not make any other change in
+these notices.
+
+  Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+  This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+  4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+  If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library".  Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+  However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library".  The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+  When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library.  The
+threshold for this to be true is not precisely defined by law.
+
+  If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work.  (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+  Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+  6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+  You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License.  You must supply a copy of this License.  If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License.  Also, you must do one
+of these things:
+
+    a) Accompany the work with the complete corresponding
+    machine-readable source code for the Library including whatever
+    changes were used in the work (which must be distributed under
+    Sections 1 and 2 above); and, if the work is an executable linked
+    with the Library, with the complete machine-readable "work that
+    uses the Library", as object code and/or source code, so that the
+    user can modify the Library and then relink to produce a modified
+    executable containing the modified Library.  (It is understood
+    that the user who changes the contents of definitions files in the
+    Library will not necessarily be able to recompile the application
+    to use the modified definitions.)
+
+    b) Use a suitable shared library mechanism for linking with the
+    Library.  A suitable mechanism is one that (1) uses at run time a
+    copy of the library already present on the user's computer system,
+    rather than copying library functions into the executable, and (2)
+    will operate properly with a modified version of the library, if
+    the user installs one, as long as the modified version is
+    interface-compatible with the version that the work was made with.
+
+    c) Accompany the work with a written offer, valid for at
+    least three years, to give the same user the materials
+    specified in Subsection 6a, above, for a charge no more
+    than the cost of performing this distribution.
+
+    d) If distribution of the work is made by offering access to copy
+    from a designated place, offer equivalent access to copy the above
+    specified materials from the same place.
+
+    e) Verify that the user has already received a copy of these
+    materials or that you have already sent this user a copy.
+
+  For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it.  However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+  It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system.  Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+  7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+    a) Accompany the combined library with a copy of the same work
+    based on the Library, uncombined with any other library
+    facilities.  This must be distributed under the terms of the
+    Sections above.
+
+    b) Give prominent notice with the combined library of the fact
+    that part of it is a work based on the Library, and explaining
+    where to find the accompanying uncombined form of the same work.
+
+  8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License.  Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License.  However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+  9. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Library or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+  10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+  11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded.  In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+  13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation.  If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+  14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission.  For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this.  Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+                            NO WARRANTY
+
+  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
diff --git a/Setup.hs b/Setup.hs
new file mode 100644
--- /dev/null
+++ b/Setup.hs
@@ -0,0 +1,3 @@
+#!/usr/bin/env runhaskell
+import Distribution.Simple
+main = defaultMain
diff --git a/gi-webkit2webextension.cabal b/gi-webkit2webextension.cabal
new file mode 100644
--- /dev/null
+++ b/gi-webkit2webextension.cabal
@@ -0,0 +1,150 @@
+-- Autogenerated, do not edit.
+name:               gi-webkit2webextension
+version:            0.2.8.12
+synopsis:           WebKit2WebExtension bindings
+description:        Bindings for WebKit2WebExtension, autogenerated by haskell-gi.
+homepage:           https://github.com/haskell-gi/haskell-gi
+license:            LGPL-2.1
+license-file:       LICENSE
+author:             Will Thompson, Iñaki García Etxebarria and Jonas Platte
+maintainer:         Iñaki García Etxebarria (garetxe@gmail.com)
+category:           Bindings
+build-type:         Simple
+cabal-version:      >=1.10
+
+library
+    default-language:   Haskell2010
+    default-extensions: OverloadedStrings, NegativeLiterals, ConstraintKinds, TypeFamilies, MultiParamTypeClasses, KindSignatures, FlexibleInstances, UndecidableInstances, DataKinds, FlexibleContexts
+    other-extensions:   PatternSynonyms ScopedTypeVariables, ViewPatterns
+    ghc-options:        -fno-warn-unused-imports -fno-warn-warnings-deprecations
+    exposed-modules:    GI.WebKit2WebExtension.Types
+                        GI.WebKit2WebExtension
+                        GI.WebKit2WebExtension.Callbacks
+                        GI.WebKit2WebExtension.Constants
+                        GI.WebKit2WebExtension.Enums
+                        GI.WebKit2WebExtension.Flags
+                        GI.WebKit2WebExtension.Interfaces
+                        GI.WebKit2WebExtension.Interfaces.DOMEventTarget
+                        GI.WebKit2WebExtension.Interfaces.DOMNodeFilter
+                        GI.WebKit2WebExtension.Interfaces.DOMXPathNSResolver
+                        GI.WebKit2WebExtension.Objects
+                        GI.WebKit2WebExtension.Objects.ContextMenu
+                        GI.WebKit2WebExtension.Objects.ContextMenuItem
+                        GI.WebKit2WebExtension.Objects.DOMAttr
+                        GI.WebKit2WebExtension.Objects.DOMBlob
+                        GI.WebKit2WebExtension.Objects.DOMCDATASection
+                        GI.WebKit2WebExtension.Objects.DOMCSSRule
+                        GI.WebKit2WebExtension.Objects.DOMCSSRuleList
+                        GI.WebKit2WebExtension.Objects.DOMCSSStyleDeclaration
+                        GI.WebKit2WebExtension.Objects.DOMCSSStyleSheet
+                        GI.WebKit2WebExtension.Objects.DOMCSSValue
+                        GI.WebKit2WebExtension.Objects.DOMCharacterData
+                        GI.WebKit2WebExtension.Objects.DOMComment
+                        GI.WebKit2WebExtension.Objects.DOMDOMImplementation
+                        GI.WebKit2WebExtension.Objects.DOMDOMWindow
+                        GI.WebKit2WebExtension.Objects.DOMDocument
+                        GI.WebKit2WebExtension.Objects.DOMDocumentFragment
+                        GI.WebKit2WebExtension.Objects.DOMDocumentType
+                        GI.WebKit2WebExtension.Objects.DOMElement
+                        GI.WebKit2WebExtension.Objects.DOMEntityReference
+                        GI.WebKit2WebExtension.Objects.DOMEvent
+                        GI.WebKit2WebExtension.Objects.DOMFile
+                        GI.WebKit2WebExtension.Objects.DOMFileList
+                        GI.WebKit2WebExtension.Objects.DOMHTMLAnchorElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLAppletElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLAreaElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLBRElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLBaseElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLBaseFontElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLBodyElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLButtonElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLCanvasElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLCollection
+                        GI.WebKit2WebExtension.Objects.DOMHTMLDListElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLDirectoryElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLDivElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLDocument
+                        GI.WebKit2WebExtension.Objects.DOMHTMLElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLEmbedElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLFieldSetElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLFontElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLFormElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLFrameElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLFrameSetElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLHRElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLHeadElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLHeadingElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLHtmlElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLIFrameElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLImageElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLInputElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLLIElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLLabelElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLLegendElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLLinkElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLMapElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLMarqueeElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLMenuElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLMetaElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLModElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLOListElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLObjectElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLOptGroupElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLOptionElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLOptionsCollection
+                        GI.WebKit2WebExtension.Objects.DOMHTMLParagraphElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLParamElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLPreElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLQuoteElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLScriptElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLStyleElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLTableCaptionElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLTableCellElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLTableColElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLTableElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLTableRowElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLTableSectionElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLTextAreaElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLTitleElement
+                        GI.WebKit2WebExtension.Objects.DOMHTMLUListElement
+                        GI.WebKit2WebExtension.Objects.DOMKeyboardEvent
+                        GI.WebKit2WebExtension.Objects.DOMMediaList
+                        GI.WebKit2WebExtension.Objects.DOMMouseEvent
+                        GI.WebKit2WebExtension.Objects.DOMNamedNodeMap
+                        GI.WebKit2WebExtension.Objects.DOMNode
+                        GI.WebKit2WebExtension.Objects.DOMNodeIterator
+                        GI.WebKit2WebExtension.Objects.DOMNodeList
+                        GI.WebKit2WebExtension.Objects.DOMObject
+                        GI.WebKit2WebExtension.Objects.DOMProcessingInstruction
+                        GI.WebKit2WebExtension.Objects.DOMRange
+                        GI.WebKit2WebExtension.Objects.DOMStyleSheet
+                        GI.WebKit2WebExtension.Objects.DOMStyleSheetList
+                        GI.WebKit2WebExtension.Objects.DOMText
+                        GI.WebKit2WebExtension.Objects.DOMTreeWalker
+                        GI.WebKit2WebExtension.Objects.DOMUIEvent
+                        GI.WebKit2WebExtension.Objects.DOMWheelEvent
+                        GI.WebKit2WebExtension.Objects.DOMXPathExpression
+                        GI.WebKit2WebExtension.Objects.DOMXPathResult
+                        GI.WebKit2WebExtension.Objects.Frame
+                        GI.WebKit2WebExtension.Objects.HitTestResult
+                        GI.WebKit2WebExtension.Objects.ScriptWorld
+                        GI.WebKit2WebExtension.Objects.URIRequest
+                        GI.WebKit2WebExtension.Objects.URIResponse
+                        GI.WebKit2WebExtension.Objects.WebExtension
+                        GI.WebKit2WebExtension.Objects.WebHitTestResult
+                        GI.WebKit2WebExtension.Objects.WebPage
+                        GI.WebKit2WebExtension.Structs
+                        GI.WebKit2WebExtension.Structs.ContextMenuItem_
+                        GI.WebKit2WebExtension.Structs.ContextMenu_
+    pkgconfig-depends:  webkit2gtk-web-extension-4.0 >= 2.8
+    build-depends: base >= 4.7 && <5,
+        haskell-gi-base >= 0.12 && < 1,
+        gi-gobject >= 0.2.44.12 && < 0.2.45,
+        gi-gtk >= 0.3.16.12 && < 0.3.17,
+        gi-javascriptcore >= 0.2.8.12 && < 0.2.9,
+        gi-soup >= 0.2.50.12 && < 0.2.51,
+        bytestring >= 0.10,
+        containers >= 0.5,
+        text >= 1.0,
+        transformers >= 0.3
