{- |
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(..)                ,
    IsDOMHTMLSelectElement                  ,
    toDOMHTMLSelectElement                  ,
    noDOMHTMLSelectElement                  ,


 -- * Methods
-- ** add #method:add#
    DOMHTMLSelectElementAddMethodInfo       ,
    dOMHTMLSelectElementAdd                 ,


-- ** getAutofocus #method:getAutofocus#
    DOMHTMLSelectElementGetAutofocusMethodInfo,
    dOMHTMLSelectElementGetAutofocus        ,


-- ** getDisabled #method:getDisabled#
    DOMHTMLSelectElementGetDisabledMethodInfo,
    dOMHTMLSelectElementGetDisabled         ,


-- ** getForm #method:getForm#
    DOMHTMLSelectElementGetFormMethodInfo   ,
    dOMHTMLSelectElementGetForm             ,


-- ** getLength #method:getLength#
    DOMHTMLSelectElementGetLengthMethodInfo ,
    dOMHTMLSelectElementGetLength           ,


-- ** getMultiple #method:getMultiple#
    DOMHTMLSelectElementGetMultipleMethodInfo,
    dOMHTMLSelectElementGetMultiple         ,


-- ** getName #method:getName#
    DOMHTMLSelectElementGetNameMethodInfo   ,
    dOMHTMLSelectElementGetName             ,


-- ** getOptions #method:getOptions#
    DOMHTMLSelectElementGetOptionsMethodInfo,
    dOMHTMLSelectElementGetOptions          ,


-- ** getSelectType #method:getSelectType#
    DOMHTMLSelectElementGetSelectTypeMethodInfo,
    dOMHTMLSelectElementGetSelectType       ,


-- ** getSelectedIndex #method:getSelectedIndex#
    DOMHTMLSelectElementGetSelectedIndexMethodInfo,
    dOMHTMLSelectElementGetSelectedIndex    ,


-- ** getSize #method:getSize#
    DOMHTMLSelectElementGetSizeMethodInfo   ,
    dOMHTMLSelectElementGetSize             ,


-- ** getValue #method:getValue#
    DOMHTMLSelectElementGetValueMethodInfo  ,
    dOMHTMLSelectElementGetValue            ,


-- ** getWillValidate #method:getWillValidate#
    DOMHTMLSelectElementGetWillValidateMethodInfo,
    dOMHTMLSelectElementGetWillValidate     ,


-- ** item #method:item#
    DOMHTMLSelectElementItemMethodInfo      ,
    dOMHTMLSelectElementItem                ,


-- ** namedItem #method:namedItem#
    DOMHTMLSelectElementNamedItemMethodInfo ,
    dOMHTMLSelectElementNamedItem           ,


-- ** remove #method:remove#
    DOMHTMLSelectElementRemoveMethodInfo    ,
    dOMHTMLSelectElementRemove              ,


-- ** setAutofocus #method:setAutofocus#
    DOMHTMLSelectElementSetAutofocusMethodInfo,
    dOMHTMLSelectElementSetAutofocus        ,


-- ** setDisabled #method:setDisabled#
    DOMHTMLSelectElementSetDisabledMethodInfo,
    dOMHTMLSelectElementSetDisabled         ,


-- ** setLength #method:setLength#
    DOMHTMLSelectElementSetLengthMethodInfo ,
    dOMHTMLSelectElementSetLength           ,


-- ** setMultiple #method:setMultiple#
    DOMHTMLSelectElementSetMultipleMethodInfo,
    dOMHTMLSelectElementSetMultiple         ,


-- ** setName #method:setName#
    DOMHTMLSelectElementSetNameMethodInfo   ,
    dOMHTMLSelectElementSetName             ,


-- ** setSelectedIndex #method:setSelectedIndex#
    DOMHTMLSelectElementSetSelectedIndexMethodInfo,
    dOMHTMLSelectElementSetSelectedIndex    ,


-- ** setSize #method:setSize#
    DOMHTMLSelectElementSetSizeMethodInfo   ,
    dOMHTMLSelectElementSetSize             ,


-- ** setValue #method:setValue#
    DOMHTMLSelectElementSetValueMethodInfo  ,
    dOMHTMLSelectElementSetValue            ,




 -- * Properties
-- ** autocomplete #attr:autocomplete#
    DOMHTMLSelectElementAutocompletePropertyInfo,
    clearDOMHTMLSelectElementAutocomplete   ,
    constructDOMHTMLSelectElementAutocomplete,
    dOMHTMLSelectElementAutocomplete        ,
    getDOMHTMLSelectElementAutocomplete     ,
    setDOMHTMLSelectElementAutocomplete     ,


-- ** autofocus #attr:autofocus#
    DOMHTMLSelectElementAutofocusPropertyInfo,
    constructDOMHTMLSelectElementAutofocus  ,
    dOMHTMLSelectElementAutofocus           ,
    getDOMHTMLSelectElementAutofocus        ,
    setDOMHTMLSelectElementAutofocus        ,


-- ** disabled #attr:disabled#
    DOMHTMLSelectElementDisabledPropertyInfo,
    constructDOMHTMLSelectElementDisabled   ,
    dOMHTMLSelectElementDisabled            ,
    getDOMHTMLSelectElementDisabled         ,
    setDOMHTMLSelectElementDisabled         ,


-- ** form #attr:form#
    DOMHTMLSelectElementFormPropertyInfo    ,
    dOMHTMLSelectElementForm                ,
    getDOMHTMLSelectElementForm             ,


-- ** labels #attr:labels#
    DOMHTMLSelectElementLabelsPropertyInfo  ,
    dOMHTMLSelectElementLabels              ,
    getDOMHTMLSelectElementLabels           ,


-- ** length #attr:length#
    DOMHTMLSelectElementLengthPropertyInfo  ,
    constructDOMHTMLSelectElementLength     ,
    dOMHTMLSelectElementLength              ,
    getDOMHTMLSelectElementLength           ,
    setDOMHTMLSelectElementLength           ,


-- ** multiple #attr:multiple#
    DOMHTMLSelectElementMultiplePropertyInfo,
    constructDOMHTMLSelectElementMultiple   ,
    dOMHTMLSelectElementMultiple            ,
    getDOMHTMLSelectElementMultiple         ,
    setDOMHTMLSelectElementMultiple         ,


-- ** name #attr:name#
    DOMHTMLSelectElementNamePropertyInfo    ,
    constructDOMHTMLSelectElementName       ,
    dOMHTMLSelectElementName                ,
    getDOMHTMLSelectElementName             ,
    setDOMHTMLSelectElementName             ,


-- ** options #attr:options#
    DOMHTMLSelectElementOptionsPropertyInfo ,
    dOMHTMLSelectElementOptions             ,
    getDOMHTMLSelectElementOptions          ,


-- ** required #attr:required#
    DOMHTMLSelectElementRequiredPropertyInfo,
    constructDOMHTMLSelectElementRequired   ,
    dOMHTMLSelectElementRequired            ,
    getDOMHTMLSelectElementRequired         ,
    setDOMHTMLSelectElementRequired         ,


-- ** selectedIndex #attr:selectedIndex#
    DOMHTMLSelectElementSelectedIndexPropertyInfo,
    constructDOMHTMLSelectElementSelectedIndex,
    dOMHTMLSelectElementSelectedIndex       ,
    getDOMHTMLSelectElementSelectedIndex    ,
    setDOMHTMLSelectElementSelectedIndex    ,


-- ** selectedOptions #attr:selectedOptions#
    DOMHTMLSelectElementSelectedOptionsPropertyInfo,
    dOMHTMLSelectElementSelectedOptions     ,
    getDOMHTMLSelectElementSelectedOptions  ,


-- ** size #attr:size#
    DOMHTMLSelectElementSizePropertyInfo    ,
    constructDOMHTMLSelectElementSize       ,
    dOMHTMLSelectElementSize                ,
    getDOMHTMLSelectElementSize             ,
    setDOMHTMLSelectElementSize             ,


-- ** type #attr:type#
    DOMHTMLSelectElementTypePropertyInfo    ,
    dOMHTMLSelectElementType                ,
    getDOMHTMLSelectElementType             ,


-- ** validationMessage #attr:validationMessage#
    DOMHTMLSelectElementValidationMessagePropertyInfo,
    dOMHTMLSelectElementValidationMessage   ,
    getDOMHTMLSelectElementValidationMessage,


-- ** value #attr:value#
    DOMHTMLSelectElementValuePropertyInfo   ,
    constructDOMHTMLSelectElementValue      ,
    dOMHTMLSelectElementValue               ,
    getDOMHTMLSelectElementValue            ,
    setDOMHTMLSelectElementValue            ,


-- ** willValidate #attr:willValidate#
    DOMHTMLSelectElementWillValidatePropertyInfo,
    dOMHTMLSelectElementWillValidate        ,
    getDOMHTMLSelectElementWillValidate     ,




    ) where

import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P

import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP

import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Interfaces.DOMEventTarget as WebKit2WebExtension.DOMEventTarget
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMElement as WebKit2WebExtension.DOMElement
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMHTMLCollection as WebKit2WebExtension.DOMHTMLCollection
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMHTMLElement as WebKit2WebExtension.DOMHTMLElement
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMHTMLFormElement as WebKit2WebExtension.DOMHTMLFormElement
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMHTMLOptionsCollection as WebKit2WebExtension.DOMHTMLOptionsCollection
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMNode as WebKit2WebExtension.DOMNode
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMNodeList as WebKit2WebExtension.DOMNodeList
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMObject as WebKit2WebExtension.DOMObject

newtype DOMHTMLSelectElement = DOMHTMLSelectElement (ManagedPtr DOMHTMLSelectElement)
foreign import ccall "webkit_dom_html_select_element_get_type"
    c_webkit_dom_html_select_element_get_type :: IO GType

instance GObject DOMHTMLSelectElement where
    gobjectType _ = c_webkit_dom_html_select_element_get_type
    

class GObject o => IsDOMHTMLSelectElement o
#if MIN_VERSION_base(4,9,0)
instance {-# OVERLAPPABLE #-} (GObject a, O.UnknownAncestorError DOMHTMLSelectElement a) =>
    IsDOMHTMLSelectElement a
#endif
instance IsDOMHTMLSelectElement DOMHTMLSelectElement
instance WebKit2WebExtension.DOMHTMLElement.IsDOMHTMLElement DOMHTMLSelectElement
instance WebKit2WebExtension.DOMElement.IsDOMElement DOMHTMLSelectElement
instance WebKit2WebExtension.DOMNode.IsDOMNode DOMHTMLSelectElement
instance WebKit2WebExtension.DOMObject.IsDOMObject DOMHTMLSelectElement
instance GObject.Object.IsObject DOMHTMLSelectElement
instance WebKit2WebExtension.DOMEventTarget.IsDOMEventTarget DOMHTMLSelectElement

toDOMHTMLSelectElement :: IsDOMHTMLSelectElement o => o -> IO DOMHTMLSelectElement
toDOMHTMLSelectElement = unsafeCastTo DOMHTMLSelectElement

noDOMHTMLSelectElement :: Maybe DOMHTMLSelectElement
noDOMHTMLSelectElement = Nothing

type family ResolveDOMHTMLSelectElementMethod (t :: Symbol) (o :: *) :: * where
    ResolveDOMHTMLSelectElementMethod "add" o = DOMHTMLSelectElementAddMethodInfo
    ResolveDOMHTMLSelectElementMethod "addEventListener" o = WebKit2WebExtension.DOMEventTarget.DOMEventTargetAddEventListenerMethodInfo
    ResolveDOMHTMLSelectElementMethod "appendChild" o = WebKit2WebExtension.DOMNode.DOMNodeAppendChildMethodInfo
    ResolveDOMHTMLSelectElementMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveDOMHTMLSelectElementMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveDOMHTMLSelectElementMethod "blur" o = WebKit2WebExtension.DOMElement.DOMElementBlurMethodInfo
    ResolveDOMHTMLSelectElementMethod "click" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementClickMethodInfo
    ResolveDOMHTMLSelectElementMethod "cloneNodeWithError" o = WebKit2WebExtension.DOMNode.DOMNodeCloneNodeWithErrorMethodInfo
    ResolveDOMHTMLSelectElementMethod "compareDocumentPosition" o = WebKit2WebExtension.DOMNode.DOMNodeCompareDocumentPositionMethodInfo
    ResolveDOMHTMLSelectElementMethod "contains" o = WebKit2WebExtension.DOMNode.DOMNodeContainsMethodInfo
    ResolveDOMHTMLSelectElementMethod "dispatchEvent" o = WebKit2WebExtension.DOMEventTarget.DOMEventTargetDispatchEventMethodInfo
    ResolveDOMHTMLSelectElementMethod "focus" o = WebKit2WebExtension.DOMElement.DOMElementFocusMethodInfo
    ResolveDOMHTMLSelectElementMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveDOMHTMLSelectElementMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveDOMHTMLSelectElementMethod "hasAttribute" o = WebKit2WebExtension.DOMElement.DOMElementHasAttributeMethodInfo
    ResolveDOMHTMLSelectElementMethod "hasAttributeNs" o = WebKit2WebExtension.DOMElement.DOMElementHasAttributeNsMethodInfo
    ResolveDOMHTMLSelectElementMethod "hasAttributes" o = WebKit2WebExtension.DOMElement.DOMElementHasAttributesMethodInfo
    ResolveDOMHTMLSelectElementMethod "hasChildNodes" o = WebKit2WebExtension.DOMNode.DOMNodeHasChildNodesMethodInfo
    ResolveDOMHTMLSelectElementMethod "insertBefore" o = WebKit2WebExtension.DOMNode.DOMNodeInsertBeforeMethodInfo
    ResolveDOMHTMLSelectElementMethod "isDefaultNamespace" o = WebKit2WebExtension.DOMNode.DOMNodeIsDefaultNamespaceMethodInfo
    ResolveDOMHTMLSelectElementMethod "isEqualNode" o = WebKit2WebExtension.DOMNode.DOMNodeIsEqualNodeMethodInfo
    ResolveDOMHTMLSelectElementMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveDOMHTMLSelectElementMethod "isSameNode" o = WebKit2WebExtension.DOMNode.DOMNodeIsSameNodeMethodInfo
    ResolveDOMHTMLSelectElementMethod "isSupported" o = WebKit2WebExtension.DOMNode.DOMNodeIsSupportedMethodInfo
    ResolveDOMHTMLSelectElementMethod "item" o = DOMHTMLSelectElementItemMethodInfo
    ResolveDOMHTMLSelectElementMethod "lookupNamespaceUri" o = WebKit2WebExtension.DOMNode.DOMNodeLookupNamespaceUriMethodInfo
    ResolveDOMHTMLSelectElementMethod "lookupPrefix" o = WebKit2WebExtension.DOMNode.DOMNodeLookupPrefixMethodInfo
    ResolveDOMHTMLSelectElementMethod "namedItem" o = DOMHTMLSelectElementNamedItemMethodInfo
    ResolveDOMHTMLSelectElementMethod "normalize" o = WebKit2WebExtension.DOMNode.DOMNodeNormalizeMethodInfo
    ResolveDOMHTMLSelectElementMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveDOMHTMLSelectElementMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveDOMHTMLSelectElementMethod "querySelector" o = WebKit2WebExtension.DOMElement.DOMElementQuerySelectorMethodInfo
    ResolveDOMHTMLSelectElementMethod "querySelectorAll" o = WebKit2WebExtension.DOMElement.DOMElementQuerySelectorAllMethodInfo
    ResolveDOMHTMLSelectElementMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveDOMHTMLSelectElementMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveDOMHTMLSelectElementMethod "remove" o = DOMHTMLSelectElementRemoveMethodInfo
    ResolveDOMHTMLSelectElementMethod "removeAttribute" o = WebKit2WebExtension.DOMElement.DOMElementRemoveAttributeMethodInfo
    ResolveDOMHTMLSelectElementMethod "removeAttributeNode" o = WebKit2WebExtension.DOMElement.DOMElementRemoveAttributeNodeMethodInfo
    ResolveDOMHTMLSelectElementMethod "removeAttributeNs" o = WebKit2WebExtension.DOMElement.DOMElementRemoveAttributeNsMethodInfo
    ResolveDOMHTMLSelectElementMethod "removeChild" o = WebKit2WebExtension.DOMNode.DOMNodeRemoveChildMethodInfo
    ResolveDOMHTMLSelectElementMethod "removeEventListener" o = WebKit2WebExtension.DOMEventTarget.DOMEventTargetRemoveEventListenerMethodInfo
    ResolveDOMHTMLSelectElementMethod "replaceChild" o = WebKit2WebExtension.DOMNode.DOMNodeReplaceChildMethodInfo
    ResolveDOMHTMLSelectElementMethod "replaceData" o = GObject.Object.ObjectReplaceDataMethodInfo
    ResolveDOMHTMLSelectElementMethod "replaceQdata" o = GObject.Object.ObjectReplaceQdataMethodInfo
    ResolveDOMHTMLSelectElementMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveDOMHTMLSelectElementMethod "scrollByLines" o = WebKit2WebExtension.DOMElement.DOMElementScrollByLinesMethodInfo
    ResolveDOMHTMLSelectElementMethod "scrollByPages" o = WebKit2WebExtension.DOMElement.DOMElementScrollByPagesMethodInfo
    ResolveDOMHTMLSelectElementMethod "scrollIntoView" o = WebKit2WebExtension.DOMElement.DOMElementScrollIntoViewMethodInfo
    ResolveDOMHTMLSelectElementMethod "scrollIntoViewIfNeeded" o = WebKit2WebExtension.DOMElement.DOMElementScrollIntoViewIfNeededMethodInfo
    ResolveDOMHTMLSelectElementMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveDOMHTMLSelectElementMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveDOMHTMLSelectElementMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveDOMHTMLSelectElementMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveDOMHTMLSelectElementMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveDOMHTMLSelectElementMethod "getAccessKey" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetAccessKeyMethodInfo
    ResolveDOMHTMLSelectElementMethod "getAttribute" o = WebKit2WebExtension.DOMElement.DOMElementGetAttributeMethodInfo
    ResolveDOMHTMLSelectElementMethod "getAttributeNode" o = WebKit2WebExtension.DOMElement.DOMElementGetAttributeNodeMethodInfo
    ResolveDOMHTMLSelectElementMethod "getAttributeNodeNs" o = WebKit2WebExtension.DOMElement.DOMElementGetAttributeNodeNsMethodInfo
    ResolveDOMHTMLSelectElementMethod "getAttributeNs" o = WebKit2WebExtension.DOMElement.DOMElementGetAttributeNsMethodInfo
    ResolveDOMHTMLSelectElementMethod "getAttributes" o = WebKit2WebExtension.DOMElement.DOMElementGetAttributesMethodInfo
    ResolveDOMHTMLSelectElementMethod "getAutofocus" o = DOMHTMLSelectElementGetAutofocusMethodInfo
    ResolveDOMHTMLSelectElementMethod "getBaseUri" o = WebKit2WebExtension.DOMNode.DOMNodeGetBaseUriMethodInfo
    ResolveDOMHTMLSelectElementMethod "getChildElementCount" o = WebKit2WebExtension.DOMElement.DOMElementGetChildElementCountMethodInfo
    ResolveDOMHTMLSelectElementMethod "getChildNodes" o = WebKit2WebExtension.DOMNode.DOMNodeGetChildNodesMethodInfo
    ResolveDOMHTMLSelectElementMethod "getChildren" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetChildrenMethodInfo
    ResolveDOMHTMLSelectElementMethod "getClassName" o = WebKit2WebExtension.DOMElement.DOMElementGetClassNameMethodInfo
    ResolveDOMHTMLSelectElementMethod "getClientHeight" o = WebKit2WebExtension.DOMElement.DOMElementGetClientHeightMethodInfo
    ResolveDOMHTMLSelectElementMethod "getClientLeft" o = WebKit2WebExtension.DOMElement.DOMElementGetClientLeftMethodInfo
    ResolveDOMHTMLSelectElementMethod "getClientTop" o = WebKit2WebExtension.DOMElement.DOMElementGetClientTopMethodInfo
    ResolveDOMHTMLSelectElementMethod "getClientWidth" o = WebKit2WebExtension.DOMElement.DOMElementGetClientWidthMethodInfo
    ResolveDOMHTMLSelectElementMethod "getContentEditable" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetContentEditableMethodInfo
    ResolveDOMHTMLSelectElementMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveDOMHTMLSelectElementMethod "getDir" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetDirMethodInfo
    ResolveDOMHTMLSelectElementMethod "getDisabled" o = DOMHTMLSelectElementGetDisabledMethodInfo
    ResolveDOMHTMLSelectElementMethod "getElementsByClassName" o = WebKit2WebExtension.DOMElement.DOMElementGetElementsByClassNameMethodInfo
    ResolveDOMHTMLSelectElementMethod "getElementsByClassNameAsHtmlCollection" o = WebKit2WebExtension.DOMElement.DOMElementGetElementsByClassNameAsHtmlCollectionMethodInfo
    ResolveDOMHTMLSelectElementMethod "getElementsByTagName" o = WebKit2WebExtension.DOMElement.DOMElementGetElementsByTagNameMethodInfo
    ResolveDOMHTMLSelectElementMethod "getElementsByTagNameAsHtmlCollection" o = WebKit2WebExtension.DOMElement.DOMElementGetElementsByTagNameAsHtmlCollectionMethodInfo
    ResolveDOMHTMLSelectElementMethod "getElementsByTagNameNs" o = WebKit2WebExtension.DOMElement.DOMElementGetElementsByTagNameNsMethodInfo
    ResolveDOMHTMLSelectElementMethod "getElementsByTagNameNsAsHtmlCollection" o = WebKit2WebExtension.DOMElement.DOMElementGetElementsByTagNameNsAsHtmlCollectionMethodInfo
    ResolveDOMHTMLSelectElementMethod "getFirstChild" o = WebKit2WebExtension.DOMNode.DOMNodeGetFirstChildMethodInfo
    ResolveDOMHTMLSelectElementMethod "getFirstElementChild" o = WebKit2WebExtension.DOMElement.DOMElementGetFirstElementChildMethodInfo
    ResolveDOMHTMLSelectElementMethod "getForm" o = DOMHTMLSelectElementGetFormMethodInfo
    ResolveDOMHTMLSelectElementMethod "getId" o = WebKit2WebExtension.DOMElement.DOMElementGetIdMethodInfo
    ResolveDOMHTMLSelectElementMethod "getInnerHtml" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetInnerHtmlMethodInfo
    ResolveDOMHTMLSelectElementMethod "getInnerText" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetInnerTextMethodInfo
    ResolveDOMHTMLSelectElementMethod "getIsContentEditable" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetIsContentEditableMethodInfo
    ResolveDOMHTMLSelectElementMethod "getLang" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetLangMethodInfo
    ResolveDOMHTMLSelectElementMethod "getLastChild" o = WebKit2WebExtension.DOMNode.DOMNodeGetLastChildMethodInfo
    ResolveDOMHTMLSelectElementMethod "getLastElementChild" o = WebKit2WebExtension.DOMElement.DOMElementGetLastElementChildMethodInfo
    ResolveDOMHTMLSelectElementMethod "getLength" o = DOMHTMLSelectElementGetLengthMethodInfo
    ResolveDOMHTMLSelectElementMethod "getLocalName" o = WebKit2WebExtension.DOMElement.DOMElementGetLocalNameMethodInfo
    ResolveDOMHTMLSelectElementMethod "getMultiple" o = DOMHTMLSelectElementGetMultipleMethodInfo
    ResolveDOMHTMLSelectElementMethod "getName" o = DOMHTMLSelectElementGetNameMethodInfo
    ResolveDOMHTMLSelectElementMethod "getNamespaceUri" o = WebKit2WebExtension.DOMElement.DOMElementGetNamespaceUriMethodInfo
    ResolveDOMHTMLSelectElementMethod "getNextElementSibling" o = WebKit2WebExtension.DOMElement.DOMElementGetNextElementSiblingMethodInfo
    ResolveDOMHTMLSelectElementMethod "getNextSibling" o = WebKit2WebExtension.DOMNode.DOMNodeGetNextSiblingMethodInfo
    ResolveDOMHTMLSelectElementMethod "getNodeName" o = WebKit2WebExtension.DOMNode.DOMNodeGetNodeNameMethodInfo
    ResolveDOMHTMLSelectElementMethod "getNodeType" o = WebKit2WebExtension.DOMNode.DOMNodeGetNodeTypeMethodInfo
    ResolveDOMHTMLSelectElementMethod "getNodeValue" o = WebKit2WebExtension.DOMNode.DOMNodeGetNodeValueMethodInfo
    ResolveDOMHTMLSelectElementMethod "getOffsetHeight" o = WebKit2WebExtension.DOMElement.DOMElementGetOffsetHeightMethodInfo
    ResolveDOMHTMLSelectElementMethod "getOffsetLeft" o = WebKit2WebExtension.DOMElement.DOMElementGetOffsetLeftMethodInfo
    ResolveDOMHTMLSelectElementMethod "getOffsetParent" o = WebKit2WebExtension.DOMElement.DOMElementGetOffsetParentMethodInfo
    ResolveDOMHTMLSelectElementMethod "getOffsetTop" o = WebKit2WebExtension.DOMElement.DOMElementGetOffsetTopMethodInfo
    ResolveDOMHTMLSelectElementMethod "getOffsetWidth" o = WebKit2WebExtension.DOMElement.DOMElementGetOffsetWidthMethodInfo
    ResolveDOMHTMLSelectElementMethod "getOptions" o = DOMHTMLSelectElementGetOptionsMethodInfo
    ResolveDOMHTMLSelectElementMethod "getOuterHtml" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetOuterHtmlMethodInfo
    ResolveDOMHTMLSelectElementMethod "getOuterText" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetOuterTextMethodInfo
    ResolveDOMHTMLSelectElementMethod "getOwnerDocument" o = WebKit2WebExtension.DOMNode.DOMNodeGetOwnerDocumentMethodInfo
    ResolveDOMHTMLSelectElementMethod "getParentElement" o = WebKit2WebExtension.DOMNode.DOMNodeGetParentElementMethodInfo
    ResolveDOMHTMLSelectElementMethod "getParentNode" o = WebKit2WebExtension.DOMNode.DOMNodeGetParentNodeMethodInfo
    ResolveDOMHTMLSelectElementMethod "getPrefix" o = WebKit2WebExtension.DOMElement.DOMElementGetPrefixMethodInfo
    ResolveDOMHTMLSelectElementMethod "getPreviousElementSibling" o = WebKit2WebExtension.DOMElement.DOMElementGetPreviousElementSiblingMethodInfo
    ResolveDOMHTMLSelectElementMethod "getPreviousSibling" o = WebKit2WebExtension.DOMNode.DOMNodeGetPreviousSiblingMethodInfo
    ResolveDOMHTMLSelectElementMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveDOMHTMLSelectElementMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveDOMHTMLSelectElementMethod "getScrollHeight" o = WebKit2WebExtension.DOMElement.DOMElementGetScrollHeightMethodInfo
    ResolveDOMHTMLSelectElementMethod "getScrollLeft" o = WebKit2WebExtension.DOMElement.DOMElementGetScrollLeftMethodInfo
    ResolveDOMHTMLSelectElementMethod "getScrollTop" o = WebKit2WebExtension.DOMElement.DOMElementGetScrollTopMethodInfo
    ResolveDOMHTMLSelectElementMethod "getScrollWidth" o = WebKit2WebExtension.DOMElement.DOMElementGetScrollWidthMethodInfo
    ResolveDOMHTMLSelectElementMethod "getSelectType" o = DOMHTMLSelectElementGetSelectTypeMethodInfo
    ResolveDOMHTMLSelectElementMethod "getSelectedIndex" o = DOMHTMLSelectElementGetSelectedIndexMethodInfo
    ResolveDOMHTMLSelectElementMethod "getSize" o = DOMHTMLSelectElementGetSizeMethodInfo
    ResolveDOMHTMLSelectElementMethod "getStyle" o = WebKit2WebExtension.DOMElement.DOMElementGetStyleMethodInfo
    ResolveDOMHTMLSelectElementMethod "getTabIndex" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetTabIndexMethodInfo
    ResolveDOMHTMLSelectElementMethod "getTagName" o = WebKit2WebExtension.DOMElement.DOMElementGetTagNameMethodInfo
    ResolveDOMHTMLSelectElementMethod "getTextContent" o = WebKit2WebExtension.DOMNode.DOMNodeGetTextContentMethodInfo
    ResolveDOMHTMLSelectElementMethod "getTitle" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementGetTitleMethodInfo
    ResolveDOMHTMLSelectElementMethod "getValue" o = DOMHTMLSelectElementGetValueMethodInfo
    ResolveDOMHTMLSelectElementMethod "getWillValidate" o = DOMHTMLSelectElementGetWillValidateMethodInfo
    ResolveDOMHTMLSelectElementMethod "setAccessKey" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetAccessKeyMethodInfo
    ResolveDOMHTMLSelectElementMethod "setAttribute" o = WebKit2WebExtension.DOMElement.DOMElementSetAttributeMethodInfo
    ResolveDOMHTMLSelectElementMethod "setAttributeNode" o = WebKit2WebExtension.DOMElement.DOMElementSetAttributeNodeMethodInfo
    ResolveDOMHTMLSelectElementMethod "setAttributeNodeNs" o = WebKit2WebExtension.DOMElement.DOMElementSetAttributeNodeNsMethodInfo
    ResolveDOMHTMLSelectElementMethod "setAttributeNs" o = WebKit2WebExtension.DOMElement.DOMElementSetAttributeNsMethodInfo
    ResolveDOMHTMLSelectElementMethod "setAutofocus" o = DOMHTMLSelectElementSetAutofocusMethodInfo
    ResolveDOMHTMLSelectElementMethod "setClassName" o = WebKit2WebExtension.DOMElement.DOMElementSetClassNameMethodInfo
    ResolveDOMHTMLSelectElementMethod "setContentEditable" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetContentEditableMethodInfo
    ResolveDOMHTMLSelectElementMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveDOMHTMLSelectElementMethod "setDir" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetDirMethodInfo
    ResolveDOMHTMLSelectElementMethod "setDisabled" o = DOMHTMLSelectElementSetDisabledMethodInfo
    ResolveDOMHTMLSelectElementMethod "setId" o = WebKit2WebExtension.DOMElement.DOMElementSetIdMethodInfo
    ResolveDOMHTMLSelectElementMethod "setInnerHtml" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetInnerHtmlMethodInfo
    ResolveDOMHTMLSelectElementMethod "setInnerText" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetInnerTextMethodInfo
    ResolveDOMHTMLSelectElementMethod "setLang" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetLangMethodInfo
    ResolveDOMHTMLSelectElementMethod "setLength" o = DOMHTMLSelectElementSetLengthMethodInfo
    ResolveDOMHTMLSelectElementMethod "setMultiple" o = DOMHTMLSelectElementSetMultipleMethodInfo
    ResolveDOMHTMLSelectElementMethod "setName" o = DOMHTMLSelectElementSetNameMethodInfo
    ResolveDOMHTMLSelectElementMethod "setNodeValue" o = WebKit2WebExtension.DOMNode.DOMNodeSetNodeValueMethodInfo
    ResolveDOMHTMLSelectElementMethod "setOuterHtml" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetOuterHtmlMethodInfo
    ResolveDOMHTMLSelectElementMethod "setOuterText" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetOuterTextMethodInfo
    ResolveDOMHTMLSelectElementMethod "setPrefix" o = WebKit2WebExtension.DOMNode.DOMNodeSetPrefixMethodInfo
    ResolveDOMHTMLSelectElementMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveDOMHTMLSelectElementMethod "setScrollLeft" o = WebKit2WebExtension.DOMElement.DOMElementSetScrollLeftMethodInfo
    ResolveDOMHTMLSelectElementMethod "setScrollTop" o = WebKit2WebExtension.DOMElement.DOMElementSetScrollTopMethodInfo
    ResolveDOMHTMLSelectElementMethod "setSelectedIndex" o = DOMHTMLSelectElementSetSelectedIndexMethodInfo
    ResolveDOMHTMLSelectElementMethod "setSize" o = DOMHTMLSelectElementSetSizeMethodInfo
    ResolveDOMHTMLSelectElementMethod "setTabIndex" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetTabIndexMethodInfo
    ResolveDOMHTMLSelectElementMethod "setTextContent" o = WebKit2WebExtension.DOMNode.DOMNodeSetTextContentMethodInfo
    ResolveDOMHTMLSelectElementMethod "setTitle" o = WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSetTitleMethodInfo
    ResolveDOMHTMLSelectElementMethod "setValue" o = DOMHTMLSelectElementSetValueMethodInfo
    ResolveDOMHTMLSelectElementMethod l o = O.MethodResolutionFailed l o

instance (info ~ ResolveDOMHTMLSelectElementMethod t DOMHTMLSelectElement, O.MethodInfo info DOMHTMLSelectElement p) => O.IsLabelProxy t (DOMHTMLSelectElement -> p) where
    fromLabelProxy _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)

#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveDOMHTMLSelectElementMethod t DOMHTMLSelectElement, O.MethodInfo info DOMHTMLSelectElement p) => O.IsLabel t (DOMHTMLSelectElement -> p) where
    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif

-- VVV Prop "autocomplete"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

getDOMHTMLSelectElementAutocomplete :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m (Maybe T.Text)
getDOMHTMLSelectElementAutocomplete obj = liftIO $ getObjectPropertyString obj "autocomplete"

setDOMHTMLSelectElementAutocomplete :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> T.Text -> m ()
setDOMHTMLSelectElementAutocomplete obj val = liftIO $ setObjectPropertyString obj "autocomplete" (Just val)

constructDOMHTMLSelectElementAutocomplete :: (IsDOMHTMLSelectElement o) => T.Text -> IO (GValueConstruct o)
constructDOMHTMLSelectElementAutocomplete val = constructObjectPropertyString "autocomplete" (Just val)

clearDOMHTMLSelectElementAutocomplete :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m ()
clearDOMHTMLSelectElementAutocomplete obj = liftIO $ setObjectPropertyString obj "autocomplete" (Nothing :: Maybe T.Text)

data DOMHTMLSelectElementAutocompletePropertyInfo
instance AttrInfo DOMHTMLSelectElementAutocompletePropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementAutocompletePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint DOMHTMLSelectElementAutocompletePropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint DOMHTMLSelectElementAutocompletePropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementAutocompletePropertyInfo = (Maybe T.Text)
    type AttrLabel DOMHTMLSelectElementAutocompletePropertyInfo = "autocomplete"
    type AttrOrigin DOMHTMLSelectElementAutocompletePropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementAutocomplete
    attrSet _ = setDOMHTMLSelectElementAutocomplete
    attrConstruct _ = constructDOMHTMLSelectElementAutocomplete
    attrClear _ = clearDOMHTMLSelectElementAutocomplete

-- VVV Prop "autofocus"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

getDOMHTMLSelectElementAutofocus :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m Bool
getDOMHTMLSelectElementAutofocus obj = liftIO $ getObjectPropertyBool obj "autofocus"

setDOMHTMLSelectElementAutofocus :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> Bool -> m ()
setDOMHTMLSelectElementAutofocus obj val = liftIO $ setObjectPropertyBool obj "autofocus" val

constructDOMHTMLSelectElementAutofocus :: (IsDOMHTMLSelectElement o) => Bool -> IO (GValueConstruct o)
constructDOMHTMLSelectElementAutofocus val = constructObjectPropertyBool "autofocus" val

data DOMHTMLSelectElementAutofocusPropertyInfo
instance AttrInfo DOMHTMLSelectElementAutofocusPropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementAutofocusPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint DOMHTMLSelectElementAutofocusPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint DOMHTMLSelectElementAutofocusPropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementAutofocusPropertyInfo = Bool
    type AttrLabel DOMHTMLSelectElementAutofocusPropertyInfo = "autofocus"
    type AttrOrigin DOMHTMLSelectElementAutofocusPropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementAutofocus
    attrSet _ = setDOMHTMLSelectElementAutofocus
    attrConstruct _ = constructDOMHTMLSelectElementAutofocus
    attrClear _ = undefined

-- VVV Prop "disabled"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

getDOMHTMLSelectElementDisabled :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m Bool
getDOMHTMLSelectElementDisabled obj = liftIO $ getObjectPropertyBool obj "disabled"

setDOMHTMLSelectElementDisabled :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> Bool -> m ()
setDOMHTMLSelectElementDisabled obj val = liftIO $ setObjectPropertyBool obj "disabled" val

constructDOMHTMLSelectElementDisabled :: (IsDOMHTMLSelectElement o) => Bool -> IO (GValueConstruct o)
constructDOMHTMLSelectElementDisabled val = constructObjectPropertyBool "disabled" val

data DOMHTMLSelectElementDisabledPropertyInfo
instance AttrInfo DOMHTMLSelectElementDisabledPropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementDisabledPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint DOMHTMLSelectElementDisabledPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint DOMHTMLSelectElementDisabledPropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementDisabledPropertyInfo = Bool
    type AttrLabel DOMHTMLSelectElementDisabledPropertyInfo = "disabled"
    type AttrOrigin DOMHTMLSelectElementDisabledPropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementDisabled
    attrSet _ = setDOMHTMLSelectElementDisabled
    attrConstruct _ = constructDOMHTMLSelectElementDisabled
    attrClear _ = undefined

-- VVV Prop "form"
   -- Type: TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLFormElement"})
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

getDOMHTMLSelectElementForm :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m WebKit2WebExtension.DOMHTMLFormElement.DOMHTMLFormElement
getDOMHTMLSelectElementForm obj = liftIO $ checkUnexpectedNothing "getDOMHTMLSelectElementForm" $ getObjectPropertyObject obj "form" WebKit2WebExtension.DOMHTMLFormElement.DOMHTMLFormElement

data DOMHTMLSelectElementFormPropertyInfo
instance AttrInfo DOMHTMLSelectElementFormPropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementFormPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint DOMHTMLSelectElementFormPropertyInfo = (~) ()
    type AttrBaseTypeConstraint DOMHTMLSelectElementFormPropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementFormPropertyInfo = WebKit2WebExtension.DOMHTMLFormElement.DOMHTMLFormElement
    type AttrLabel DOMHTMLSelectElementFormPropertyInfo = "form"
    type AttrOrigin DOMHTMLSelectElementFormPropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementForm
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined

-- VVV Prop "labels"
   -- Type: TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMNodeList"})
   -- Flags: [PropertyReadable]
   -- Nullable: (Nothing,Nothing)

getDOMHTMLSelectElementLabels :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m (Maybe WebKit2WebExtension.DOMNodeList.DOMNodeList)
getDOMHTMLSelectElementLabels obj = liftIO $ getObjectPropertyObject obj "labels" WebKit2WebExtension.DOMNodeList.DOMNodeList

data DOMHTMLSelectElementLabelsPropertyInfo
instance AttrInfo DOMHTMLSelectElementLabelsPropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementLabelsPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint DOMHTMLSelectElementLabelsPropertyInfo = (~) ()
    type AttrBaseTypeConstraint DOMHTMLSelectElementLabelsPropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementLabelsPropertyInfo = (Maybe WebKit2WebExtension.DOMNodeList.DOMNodeList)
    type AttrLabel DOMHTMLSelectElementLabelsPropertyInfo = "labels"
    type AttrOrigin DOMHTMLSelectElementLabelsPropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementLabels
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined

-- VVV Prop "length"
   -- Type: TBasicType TULong
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Nothing)

getDOMHTMLSelectElementLength :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m CULong
getDOMHTMLSelectElementLength obj = liftIO $ getObjectPropertyULong obj "length"

setDOMHTMLSelectElementLength :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> CULong -> m ()
setDOMHTMLSelectElementLength obj val = liftIO $ setObjectPropertyULong obj "length" val

constructDOMHTMLSelectElementLength :: (IsDOMHTMLSelectElement o) => CULong -> IO (GValueConstruct o)
constructDOMHTMLSelectElementLength val = constructObjectPropertyULong "length" val

data DOMHTMLSelectElementLengthPropertyInfo
instance AttrInfo DOMHTMLSelectElementLengthPropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementLengthPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint DOMHTMLSelectElementLengthPropertyInfo = (~) CULong
    type AttrBaseTypeConstraint DOMHTMLSelectElementLengthPropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementLengthPropertyInfo = CULong
    type AttrLabel DOMHTMLSelectElementLengthPropertyInfo = "length"
    type AttrOrigin DOMHTMLSelectElementLengthPropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementLength
    attrSet _ = setDOMHTMLSelectElementLength
    attrConstruct _ = constructDOMHTMLSelectElementLength
    attrClear _ = undefined

-- VVV Prop "multiple"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

getDOMHTMLSelectElementMultiple :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m Bool
getDOMHTMLSelectElementMultiple obj = liftIO $ getObjectPropertyBool obj "multiple"

setDOMHTMLSelectElementMultiple :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> Bool -> m ()
setDOMHTMLSelectElementMultiple obj val = liftIO $ setObjectPropertyBool obj "multiple" val

constructDOMHTMLSelectElementMultiple :: (IsDOMHTMLSelectElement o) => Bool -> IO (GValueConstruct o)
constructDOMHTMLSelectElementMultiple val = constructObjectPropertyBool "multiple" val

data DOMHTMLSelectElementMultiplePropertyInfo
instance AttrInfo DOMHTMLSelectElementMultiplePropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementMultiplePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint DOMHTMLSelectElementMultiplePropertyInfo = (~) Bool
    type AttrBaseTypeConstraint DOMHTMLSelectElementMultiplePropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementMultiplePropertyInfo = Bool
    type AttrLabel DOMHTMLSelectElementMultiplePropertyInfo = "multiple"
    type AttrOrigin DOMHTMLSelectElementMultiplePropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementMultiple
    attrSet _ = setDOMHTMLSelectElementMultiple
    attrConstruct _ = constructDOMHTMLSelectElementMultiple
    attrClear _ = undefined

-- VVV Prop "name"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Just False)

getDOMHTMLSelectElementName :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m (Maybe T.Text)
getDOMHTMLSelectElementName obj = liftIO $ getObjectPropertyString obj "name"

setDOMHTMLSelectElementName :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> T.Text -> m ()
setDOMHTMLSelectElementName obj val = liftIO $ setObjectPropertyString obj "name" (Just val)

constructDOMHTMLSelectElementName :: (IsDOMHTMLSelectElement o) => T.Text -> IO (GValueConstruct o)
constructDOMHTMLSelectElementName val = constructObjectPropertyString "name" (Just val)

data DOMHTMLSelectElementNamePropertyInfo
instance AttrInfo DOMHTMLSelectElementNamePropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementNamePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint DOMHTMLSelectElementNamePropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint DOMHTMLSelectElementNamePropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementNamePropertyInfo = (Maybe T.Text)
    type AttrLabel DOMHTMLSelectElementNamePropertyInfo = "name"
    type AttrOrigin DOMHTMLSelectElementNamePropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementName
    attrSet _ = setDOMHTMLSelectElementName
    attrConstruct _ = constructDOMHTMLSelectElementName
    attrClear _ = undefined

-- VVV Prop "options"
   -- Type: TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLOptionsCollection"})
   -- Flags: [PropertyReadable]
   -- Nullable: (Nothing,Nothing)

getDOMHTMLSelectElementOptions :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m (Maybe WebKit2WebExtension.DOMHTMLOptionsCollection.DOMHTMLOptionsCollection)
getDOMHTMLSelectElementOptions obj = liftIO $ getObjectPropertyObject obj "options" WebKit2WebExtension.DOMHTMLOptionsCollection.DOMHTMLOptionsCollection

data DOMHTMLSelectElementOptionsPropertyInfo
instance AttrInfo DOMHTMLSelectElementOptionsPropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementOptionsPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint DOMHTMLSelectElementOptionsPropertyInfo = (~) ()
    type AttrBaseTypeConstraint DOMHTMLSelectElementOptionsPropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementOptionsPropertyInfo = (Maybe WebKit2WebExtension.DOMHTMLOptionsCollection.DOMHTMLOptionsCollection)
    type AttrLabel DOMHTMLSelectElementOptionsPropertyInfo = "options"
    type AttrOrigin DOMHTMLSelectElementOptionsPropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementOptions
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined

-- VVV Prop "required"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Nothing)

getDOMHTMLSelectElementRequired :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m Bool
getDOMHTMLSelectElementRequired obj = liftIO $ getObjectPropertyBool obj "required"

setDOMHTMLSelectElementRequired :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> Bool -> m ()
setDOMHTMLSelectElementRequired obj val = liftIO $ setObjectPropertyBool obj "required" val

constructDOMHTMLSelectElementRequired :: (IsDOMHTMLSelectElement o) => Bool -> IO (GValueConstruct o)
constructDOMHTMLSelectElementRequired val = constructObjectPropertyBool "required" val

data DOMHTMLSelectElementRequiredPropertyInfo
instance AttrInfo DOMHTMLSelectElementRequiredPropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementRequiredPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint DOMHTMLSelectElementRequiredPropertyInfo = (~) Bool
    type AttrBaseTypeConstraint DOMHTMLSelectElementRequiredPropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementRequiredPropertyInfo = Bool
    type AttrLabel DOMHTMLSelectElementRequiredPropertyInfo = "required"
    type AttrOrigin DOMHTMLSelectElementRequiredPropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementRequired
    attrSet _ = setDOMHTMLSelectElementRequired
    attrConstruct _ = constructDOMHTMLSelectElementRequired
    attrClear _ = undefined

-- VVV Prop "selected-index"
   -- Type: TBasicType TLong
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

getDOMHTMLSelectElementSelectedIndex :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m CLong
getDOMHTMLSelectElementSelectedIndex obj = liftIO $ getObjectPropertyLong obj "selected-index"

setDOMHTMLSelectElementSelectedIndex :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> CLong -> m ()
setDOMHTMLSelectElementSelectedIndex obj val = liftIO $ setObjectPropertyLong obj "selected-index" val

constructDOMHTMLSelectElementSelectedIndex :: (IsDOMHTMLSelectElement o) => CLong -> IO (GValueConstruct o)
constructDOMHTMLSelectElementSelectedIndex val = constructObjectPropertyLong "selected-index" val

data DOMHTMLSelectElementSelectedIndexPropertyInfo
instance AttrInfo DOMHTMLSelectElementSelectedIndexPropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementSelectedIndexPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint DOMHTMLSelectElementSelectedIndexPropertyInfo = (~) CLong
    type AttrBaseTypeConstraint DOMHTMLSelectElementSelectedIndexPropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementSelectedIndexPropertyInfo = CLong
    type AttrLabel DOMHTMLSelectElementSelectedIndexPropertyInfo = "selected-index"
    type AttrOrigin DOMHTMLSelectElementSelectedIndexPropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementSelectedIndex
    attrSet _ = setDOMHTMLSelectElementSelectedIndex
    attrConstruct _ = constructDOMHTMLSelectElementSelectedIndex
    attrClear _ = undefined

-- VVV Prop "selected-options"
   -- Type: TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLCollection"})
   -- Flags: [PropertyReadable]
   -- Nullable: (Nothing,Nothing)

getDOMHTMLSelectElementSelectedOptions :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m (Maybe WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection)
getDOMHTMLSelectElementSelectedOptions obj = liftIO $ getObjectPropertyObject obj "selected-options" WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection

data DOMHTMLSelectElementSelectedOptionsPropertyInfo
instance AttrInfo DOMHTMLSelectElementSelectedOptionsPropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementSelectedOptionsPropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint DOMHTMLSelectElementSelectedOptionsPropertyInfo = (~) ()
    type AttrBaseTypeConstraint DOMHTMLSelectElementSelectedOptionsPropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementSelectedOptionsPropertyInfo = (Maybe WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection)
    type AttrLabel DOMHTMLSelectElementSelectedOptionsPropertyInfo = "selected-options"
    type AttrOrigin DOMHTMLSelectElementSelectedOptionsPropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementSelectedOptions
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined

-- VVV Prop "size"
   -- Type: TBasicType TLong
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Just False,Just False)

getDOMHTMLSelectElementSize :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m CLong
getDOMHTMLSelectElementSize obj = liftIO $ getObjectPropertyLong obj "size"

setDOMHTMLSelectElementSize :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> CLong -> m ()
setDOMHTMLSelectElementSize obj val = liftIO $ setObjectPropertyLong obj "size" val

constructDOMHTMLSelectElementSize :: (IsDOMHTMLSelectElement o) => CLong -> IO (GValueConstruct o)
constructDOMHTMLSelectElementSize val = constructObjectPropertyLong "size" val

data DOMHTMLSelectElementSizePropertyInfo
instance AttrInfo DOMHTMLSelectElementSizePropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementSizePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint DOMHTMLSelectElementSizePropertyInfo = (~) CLong
    type AttrBaseTypeConstraint DOMHTMLSelectElementSizePropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementSizePropertyInfo = CLong
    type AttrLabel DOMHTMLSelectElementSizePropertyInfo = "size"
    type AttrOrigin DOMHTMLSelectElementSizePropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementSize
    attrSet _ = setDOMHTMLSelectElementSize
    attrConstruct _ = constructDOMHTMLSelectElementSize
    attrClear _ = undefined

-- VVV Prop "type"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable]
   -- Nullable: (Nothing,Nothing)

getDOMHTMLSelectElementType :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m (Maybe T.Text)
getDOMHTMLSelectElementType obj = liftIO $ getObjectPropertyString obj "type"

data DOMHTMLSelectElementTypePropertyInfo
instance AttrInfo DOMHTMLSelectElementTypePropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementTypePropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint DOMHTMLSelectElementTypePropertyInfo = (~) ()
    type AttrBaseTypeConstraint DOMHTMLSelectElementTypePropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementTypePropertyInfo = (Maybe T.Text)
    type AttrLabel DOMHTMLSelectElementTypePropertyInfo = "type"
    type AttrOrigin DOMHTMLSelectElementTypePropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementType
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined

-- VVV Prop "validation-message"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable]
   -- Nullable: (Nothing,Nothing)

getDOMHTMLSelectElementValidationMessage :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m (Maybe T.Text)
getDOMHTMLSelectElementValidationMessage obj = liftIO $ getObjectPropertyString obj "validation-message"

data DOMHTMLSelectElementValidationMessagePropertyInfo
instance AttrInfo DOMHTMLSelectElementValidationMessagePropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementValidationMessagePropertyInfo = '[ 'AttrGet, 'AttrClear]
    type AttrSetTypeConstraint DOMHTMLSelectElementValidationMessagePropertyInfo = (~) ()
    type AttrBaseTypeConstraint DOMHTMLSelectElementValidationMessagePropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementValidationMessagePropertyInfo = (Maybe T.Text)
    type AttrLabel DOMHTMLSelectElementValidationMessagePropertyInfo = "validation-message"
    type AttrOrigin DOMHTMLSelectElementValidationMessagePropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementValidationMessage
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined

-- VVV Prop "value"
   -- Type: TBasicType TUTF8
   -- Flags: [PropertyReadable,PropertyWritable]
   -- Nullable: (Nothing,Just False)

getDOMHTMLSelectElementValue :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> m (Maybe T.Text)
getDOMHTMLSelectElementValue obj = liftIO $ getObjectPropertyString obj "value"

setDOMHTMLSelectElementValue :: (MonadIO m, IsDOMHTMLSelectElement o) => o -> T.Text -> m ()
setDOMHTMLSelectElementValue obj val = liftIO $ setObjectPropertyString obj "value" (Just val)

constructDOMHTMLSelectElementValue :: (IsDOMHTMLSelectElement o) => T.Text -> IO (GValueConstruct o)
constructDOMHTMLSelectElementValue val = constructObjectPropertyString "value" (Just val)

data DOMHTMLSelectElementValuePropertyInfo
instance AttrInfo DOMHTMLSelectElementValuePropertyInfo where
    type AttrAllowedOps DOMHTMLSelectElementValuePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint DOMHTMLSelectElementValuePropertyInfo = (~) T.Text
    type AttrBaseTypeConstraint DOMHTMLSelectElementValuePropertyInfo = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementValuePropertyInfo = (Maybe T.Text)
    type AttrLabel DOMHTMLSelectElementValuePropertyInfo = "value"
    type AttrOrigin DOMHTMLSelectElementValuePropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementValue
    attrSet _ = setDOMHTMLSelectElementValue
    attrConstruct _ = constructDOMHTMLSelectElementValue
    attrClear _ = undefined

-- VVV Prop "will-validate"
   -- Type: TBasicType TBoolean
   -- Flags: [PropertyReadable]
   -- Nullable: (Just False,Nothing)

getDOMHTMLSelectElementWillValidate :: (MonadIO m, IsDOMHTMLSelectElement 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 = IsDOMHTMLSelectElement
    type AttrGetType DOMHTMLSelectElementWillValidatePropertyInfo = Bool
    type AttrLabel DOMHTMLSelectElementWillValidatePropertyInfo = "will-validate"
    type AttrOrigin DOMHTMLSelectElementWillValidatePropertyInfo = DOMHTMLSelectElement
    attrGet _ = getDOMHTMLSelectElementWillValidate
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined

instance O.HasAttributeList DOMHTMLSelectElement
type instance O.AttributeList DOMHTMLSelectElement = DOMHTMLSelectElementAttributeList
type DOMHTMLSelectElementAttributeList = ('[ '("accessKey", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementAccessKeyPropertyInfo), '("attributes", WebKit2WebExtension.DOMElement.DOMElementAttributesPropertyInfo), '("autocomplete", DOMHTMLSelectElementAutocompletePropertyInfo), '("autofocus", DOMHTMLSelectElementAutofocusPropertyInfo), '("baseUri", WebKit2WebExtension.DOMNode.DOMNodeBaseUriPropertyInfo), '("childElementCount", WebKit2WebExtension.DOMElement.DOMElementChildElementCountPropertyInfo), '("childNodes", WebKit2WebExtension.DOMNode.DOMNodeChildNodesPropertyInfo), '("children", WebKit2WebExtension.DOMElement.DOMElementChildrenPropertyInfo), '("className", WebKit2WebExtension.DOMElement.DOMElementClassNamePropertyInfo), '("clientHeight", WebKit2WebExtension.DOMElement.DOMElementClientHeightPropertyInfo), '("clientLeft", WebKit2WebExtension.DOMElement.DOMElementClientLeftPropertyInfo), '("clientTop", WebKit2WebExtension.DOMElement.DOMElementClientTopPropertyInfo), '("clientWidth", WebKit2WebExtension.DOMElement.DOMElementClientWidthPropertyInfo), '("contentEditable", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementContentEditablePropertyInfo), '("coreObject", WebKit2WebExtension.DOMObject.DOMObjectCoreObjectPropertyInfo), '("dir", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementDirPropertyInfo), '("disabled", DOMHTMLSelectElementDisabledPropertyInfo), '("draggable", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementDraggablePropertyInfo), '("firstChild", WebKit2WebExtension.DOMNode.DOMNodeFirstChildPropertyInfo), '("firstElementChild", WebKit2WebExtension.DOMElement.DOMElementFirstElementChildPropertyInfo), '("form", DOMHTMLSelectElementFormPropertyInfo), '("hidden", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementHiddenPropertyInfo), '("id", WebKit2WebExtension.DOMElement.DOMElementIdPropertyInfo), '("innerHtml", WebKit2WebExtension.DOMElement.DOMElementInnerHtmlPropertyInfo), '("innerText", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementInnerTextPropertyInfo), '("isConnected", WebKit2WebExtension.DOMNode.DOMNodeIsConnectedPropertyInfo), '("isContentEditable", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementIsContentEditablePropertyInfo), '("labels", DOMHTMLSelectElementLabelsPropertyInfo), '("lang", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementLangPropertyInfo), '("lastChild", WebKit2WebExtension.DOMNode.DOMNodeLastChildPropertyInfo), '("lastElementChild", WebKit2WebExtension.DOMElement.DOMElementLastElementChildPropertyInfo), '("length", DOMHTMLSelectElementLengthPropertyInfo), '("localName", WebKit2WebExtension.DOMElement.DOMElementLocalNamePropertyInfo), '("multiple", DOMHTMLSelectElementMultiplePropertyInfo), '("name", DOMHTMLSelectElementNamePropertyInfo), '("namespaceUri", WebKit2WebExtension.DOMElement.DOMElementNamespaceUriPropertyInfo), '("nextElementSibling", WebKit2WebExtension.DOMElement.DOMElementNextElementSiblingPropertyInfo), '("nextSibling", WebKit2WebExtension.DOMNode.DOMNodeNextSiblingPropertyInfo), '("nodeName", WebKit2WebExtension.DOMNode.DOMNodeNodeNamePropertyInfo), '("nodeType", WebKit2WebExtension.DOMNode.DOMNodeNodeTypePropertyInfo), '("nodeValue", WebKit2WebExtension.DOMNode.DOMNodeNodeValuePropertyInfo), '("offsetHeight", WebKit2WebExtension.DOMElement.DOMElementOffsetHeightPropertyInfo), '("offsetLeft", WebKit2WebExtension.DOMElement.DOMElementOffsetLeftPropertyInfo), '("offsetParent", WebKit2WebExtension.DOMElement.DOMElementOffsetParentPropertyInfo), '("offsetTop", WebKit2WebExtension.DOMElement.DOMElementOffsetTopPropertyInfo), '("offsetWidth", WebKit2WebExtension.DOMElement.DOMElementOffsetWidthPropertyInfo), '("options", DOMHTMLSelectElementOptionsPropertyInfo), '("outerHtml", WebKit2WebExtension.DOMElement.DOMElementOuterHtmlPropertyInfo), '("outerText", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementOuterTextPropertyInfo), '("ownerDocument", WebKit2WebExtension.DOMNode.DOMNodeOwnerDocumentPropertyInfo), '("parentElement", WebKit2WebExtension.DOMNode.DOMNodeParentElementPropertyInfo), '("parentNode", WebKit2WebExtension.DOMNode.DOMNodeParentNodePropertyInfo), '("prefix", WebKit2WebExtension.DOMElement.DOMElementPrefixPropertyInfo), '("previousElementSibling", WebKit2WebExtension.DOMElement.DOMElementPreviousElementSiblingPropertyInfo), '("previousSibling", WebKit2WebExtension.DOMNode.DOMNodePreviousSiblingPropertyInfo), '("required", DOMHTMLSelectElementRequiredPropertyInfo), '("scrollHeight", WebKit2WebExtension.DOMElement.DOMElementScrollHeightPropertyInfo), '("scrollLeft", WebKit2WebExtension.DOMElement.DOMElementScrollLeftPropertyInfo), '("scrollTop", WebKit2WebExtension.DOMElement.DOMElementScrollTopPropertyInfo), '("scrollWidth", WebKit2WebExtension.DOMElement.DOMElementScrollWidthPropertyInfo), '("selectedIndex", DOMHTMLSelectElementSelectedIndexPropertyInfo), '("selectedOptions", DOMHTMLSelectElementSelectedOptionsPropertyInfo), '("size", DOMHTMLSelectElementSizePropertyInfo), '("spellcheck", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementSpellcheckPropertyInfo), '("style", WebKit2WebExtension.DOMElement.DOMElementStylePropertyInfo), '("tabIndex", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementTabIndexPropertyInfo), '("tagName", WebKit2WebExtension.DOMElement.DOMElementTagNamePropertyInfo), '("textContent", WebKit2WebExtension.DOMNode.DOMNodeTextContentPropertyInfo), '("title", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementTitlePropertyInfo), '("translate", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementTranslatePropertyInfo), '("type", DOMHTMLSelectElementTypePropertyInfo), '("validationMessage", DOMHTMLSelectElementValidationMessagePropertyInfo), '("value", DOMHTMLSelectElementValuePropertyInfo), '("webkitRegionOverset", WebKit2WebExtension.DOMElement.DOMElementWebkitRegionOversetPropertyInfo), '("webkitdropzone", WebKit2WebExtension.DOMHTMLElement.DOMHTMLElementWebkitdropzonePropertyInfo), '("willValidate", DOMHTMLSelectElementWillValidatePropertyInfo)] :: [(Symbol, *)])

dOMHTMLSelectElementAutocomplete :: AttrLabelProxy "autocomplete"
dOMHTMLSelectElementAutocomplete = AttrLabelProxy

dOMHTMLSelectElementAutofocus :: AttrLabelProxy "autofocus"
dOMHTMLSelectElementAutofocus = AttrLabelProxy

dOMHTMLSelectElementDisabled :: AttrLabelProxy "disabled"
dOMHTMLSelectElementDisabled = AttrLabelProxy

dOMHTMLSelectElementForm :: AttrLabelProxy "form"
dOMHTMLSelectElementForm = AttrLabelProxy

dOMHTMLSelectElementLabels :: AttrLabelProxy "labels"
dOMHTMLSelectElementLabels = AttrLabelProxy

dOMHTMLSelectElementLength :: AttrLabelProxy "length"
dOMHTMLSelectElementLength = AttrLabelProxy

dOMHTMLSelectElementMultiple :: AttrLabelProxy "multiple"
dOMHTMLSelectElementMultiple = AttrLabelProxy

dOMHTMLSelectElementName :: AttrLabelProxy "name"
dOMHTMLSelectElementName = AttrLabelProxy

dOMHTMLSelectElementOptions :: AttrLabelProxy "options"
dOMHTMLSelectElementOptions = AttrLabelProxy

dOMHTMLSelectElementRequired :: AttrLabelProxy "required"
dOMHTMLSelectElementRequired = AttrLabelProxy

dOMHTMLSelectElementSelectedIndex :: AttrLabelProxy "selectedIndex"
dOMHTMLSelectElementSelectedIndex = AttrLabelProxy

dOMHTMLSelectElementSelectedOptions :: AttrLabelProxy "selectedOptions"
dOMHTMLSelectElementSelectedOptions = AttrLabelProxy

dOMHTMLSelectElementSize :: AttrLabelProxy "size"
dOMHTMLSelectElementSize = AttrLabelProxy

dOMHTMLSelectElementType :: AttrLabelProxy "type"
dOMHTMLSelectElementType = AttrLabelProxy

dOMHTMLSelectElementValidationMessage :: AttrLabelProxy "validationMessage"
dOMHTMLSelectElementValidationMessage = AttrLabelProxy

dOMHTMLSelectElementValue :: AttrLabelProxy "value"
dOMHTMLSelectElementValue = AttrLabelProxy

dOMHTMLSelectElementWillValidate :: AttrLabelProxy "willValidate"
dOMHTMLSelectElementWillValidate = AttrLabelProxy

type instance O.SignalList DOMHTMLSelectElement = DOMHTMLSelectElementSignalList
type DOMHTMLSelectElementSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])

-- method DOMHTMLSelectElement::add
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "element", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "before", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : True
-- Skip return : False

foreign import ccall "webkit_dom_html_select_element_add" webkit_dom_html_select_element_add :: 
    Ptr DOMHTMLSelectElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    Ptr WebKit2WebExtension.DOMHTMLElement.DOMHTMLElement -> -- element : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLElement"})
    Ptr WebKit2WebExtension.DOMHTMLElement.DOMHTMLElement -> -- before : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLElement"})
    Ptr (Ptr GError) ->                     -- error
    IO ()

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementAdd ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a, WebKit2WebExtension.DOMHTMLElement.IsDOMHTMLElement b, WebKit2WebExtension.DOMHTMLElement.IsDOMHTMLElement c) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> b
    {- ^ /@element@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLElement.DOMHTMLElement' -}
    -> c
    {- ^ /@before@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLElement.DOMHTMLElement' -}
    -> m ()
    {- ^ /(Can throw 'Data.GI.Base.GError.GError')/ -}
dOMHTMLSelectElementAdd self element before = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    element' <- unsafeManagedPtrCastPtr element
    before' <- unsafeManagedPtrCastPtr before
    onException (do
        propagateGError $ webkit_dom_html_select_element_add self' element' before'
        touchManagedPtr self
        touchManagedPtr element
        touchManagedPtr before
        return ()
     ) (do
        return ()
     )

data DOMHTMLSelectElementAddMethodInfo
instance (signature ~ (b -> c -> m ()), MonadIO m, IsDOMHTMLSelectElement a, WebKit2WebExtension.DOMHTMLElement.IsDOMHTMLElement b, WebKit2WebExtension.DOMHTMLElement.IsDOMHTMLElement c) => O.MethodInfo DOMHTMLSelectElementAddMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementAdd

-- method DOMHTMLSelectElement::get_autofocus
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (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 ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    IO CInt

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementGetAutofocus ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> m Bool
    {- ^ __Returns:__ A 'Bool' -}
dOMHTMLSelectElementGetAutofocus self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_html_select_element_get_autofocus self'
    let result' = (/= 0) result
    touchManagedPtr self
    return result'

data DOMHTMLSelectElementGetAutofocusMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementGetAutofocusMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementGetAutofocus

-- method DOMHTMLSelectElement::get_disabled
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (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 ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    IO CInt

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementGetDisabled ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> m Bool
    {- ^ __Returns:__ A 'Bool' -}
dOMHTMLSelectElementGetDisabled self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_html_select_element_get_disabled self'
    let result' = (/= 0) result
    touchManagedPtr self
    return result'

data DOMHTMLSelectElementGetDisabledMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementGetDisabledMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementGetDisabled

-- method DOMHTMLSelectElement::get_form
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TInterface (Name {namespace = "WebKit2WebExtension", name = "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 ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    IO (Ptr WebKit2WebExtension.DOMHTMLFormElement.DOMHTMLFormElement)

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementGetForm ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> m WebKit2WebExtension.DOMHTMLFormElement.DOMHTMLFormElement
    {- ^ __Returns:__ A 'GI.WebKit2WebExtension.Objects.DOMHTMLFormElement.DOMHTMLFormElement' -}
dOMHTMLSelectElementGetForm self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_html_select_element_get_form self'
    checkUnexpectedReturnNULL "dOMHTMLSelectElementGetForm" result
    result' <- (newObject WebKit2WebExtension.DOMHTMLFormElement.DOMHTMLFormElement) result
    touchManagedPtr self
    return result'

data DOMHTMLSelectElementGetFormMethodInfo
instance (signature ~ (m WebKit2WebExtension.DOMHTMLFormElement.DOMHTMLFormElement), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementGetFormMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementGetForm

-- method DOMHTMLSelectElement::get_length
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TULong)
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_select_element_get_length" webkit_dom_html_select_element_get_length :: 
    Ptr DOMHTMLSelectElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    IO CULong

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementGetLength ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> m CULong
    {- ^ __Returns:__ A @/gulong/@ -}
dOMHTMLSelectElementGetLength self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_html_select_element_get_length self'
    touchManagedPtr self
    return result

data DOMHTMLSelectElementGetLengthMethodInfo
instance (signature ~ (m CULong), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementGetLengthMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementGetLength

-- method DOMHTMLSelectElement::get_multiple
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (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 ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    IO CInt

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementGetMultiple ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> m Bool
    {- ^ __Returns:__ A 'Bool' -}
dOMHTMLSelectElementGetMultiple self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_html_select_element_get_multiple self'
    let result' = (/= 0) result
    touchManagedPtr self
    return result'

data DOMHTMLSelectElementGetMultipleMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementGetMultipleMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementGetMultiple

-- method DOMHTMLSelectElement::get_name
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (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 ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    IO CString

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementGetName ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> m T.Text
    {- ^ __Returns:__ A @/gchar/@ -}
dOMHTMLSelectElementGetName self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_html_select_element_get_name self'
    checkUnexpectedReturnNULL "dOMHTMLSelectElementGetName" result
    result' <- cstringToText result
    freeMem result
    touchManagedPtr self
    return result'

data DOMHTMLSelectElementGetNameMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementGetNameMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementGetName

-- method DOMHTMLSelectElement::get_options
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TInterface (Name {namespace = "WebKit2WebExtension", name = "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 ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    IO (Ptr WebKit2WebExtension.DOMHTMLOptionsCollection.DOMHTMLOptionsCollection)

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementGetOptions ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> m WebKit2WebExtension.DOMHTMLOptionsCollection.DOMHTMLOptionsCollection
    {- ^ __Returns:__ A 'GI.WebKit2WebExtension.Objects.DOMHTMLOptionsCollection.DOMHTMLOptionsCollection' -}
dOMHTMLSelectElementGetOptions self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_html_select_element_get_options self'
    checkUnexpectedReturnNULL "dOMHTMLSelectElementGetOptions" result
    result' <- (wrapObject WebKit2WebExtension.DOMHTMLOptionsCollection.DOMHTMLOptionsCollection) result
    touchManagedPtr self
    return result'

data DOMHTMLSelectElementGetOptionsMethodInfo
instance (signature ~ (m WebKit2WebExtension.DOMHTMLOptionsCollection.DOMHTMLOptionsCollection), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementGetOptionsMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementGetOptions

-- method DOMHTMLSelectElement::get_select_type
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (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 ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    IO CString

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementGetSelectType ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> m T.Text
    {- ^ __Returns:__ A @/gchar/@ -}
dOMHTMLSelectElementGetSelectType self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_html_select_element_get_select_type self'
    checkUnexpectedReturnNULL "dOMHTMLSelectElementGetSelectType" result
    result' <- cstringToText result
    freeMem result
    touchManagedPtr self
    return result'

data DOMHTMLSelectElementGetSelectTypeMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementGetSelectTypeMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementGetSelectType

-- method DOMHTMLSelectElement::get_selected_index
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TLong)
-- 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 ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    IO CLong

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementGetSelectedIndex ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> m CLong
    {- ^ __Returns:__ A @/glong/@ -}
dOMHTMLSelectElementGetSelectedIndex self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_html_select_element_get_selected_index self'
    touchManagedPtr self
    return result

data DOMHTMLSelectElementGetSelectedIndexMethodInfo
instance (signature ~ (m CLong), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementGetSelectedIndexMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementGetSelectedIndex

-- method DOMHTMLSelectElement::get_size
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TBasicType TLong)
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_select_element_get_size" webkit_dom_html_select_element_get_size :: 
    Ptr DOMHTMLSelectElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    IO CLong

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementGetSize ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> m CLong
    {- ^ __Returns:__ A @/glong/@ -}
dOMHTMLSelectElementGetSize self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_html_select_element_get_size self'
    touchManagedPtr self
    return result

data DOMHTMLSelectElementGetSizeMethodInfo
instance (signature ~ (m CLong), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementGetSizeMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementGetSize

-- method DOMHTMLSelectElement::get_value
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (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 ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    IO CString

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementGetValue ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> m T.Text
    {- ^ __Returns:__ A @/gchar/@ -}
dOMHTMLSelectElementGetValue self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_html_select_element_get_value self'
    checkUnexpectedReturnNULL "dOMHTMLSelectElementGetValue" result
    result' <- cstringToText result
    freeMem result
    touchManagedPtr self
    return result'

data DOMHTMLSelectElementGetValueMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementGetValueMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementGetValue

-- method DOMHTMLSelectElement::get_will_validate
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (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 ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    IO CInt

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementGetWillValidate ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> m Bool
    {- ^ __Returns:__ A 'Bool' -}
dOMHTMLSelectElementGetWillValidate self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_html_select_element_get_will_validate self'
    let result' = (/= 0) result
    touchManagedPtr self
    return result'

data DOMHTMLSelectElementGetWillValidateMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementGetWillValidateMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementGetWillValidate

-- method DOMHTMLSelectElement::item
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "index", argType = TBasicType TULong, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #gulong", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMNode"}))
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_select_element_item" webkit_dom_html_select_element_item :: 
    Ptr DOMHTMLSelectElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    CULong ->                               -- index : TBasicType TULong
    IO (Ptr WebKit2WebExtension.DOMNode.DOMNode)

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementItem ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> CULong
    {- ^ /@index@/: A @/gulong/@ -}
    -> m WebKit2WebExtension.DOMNode.DOMNode
    {- ^ __Returns:__ A 'GI.WebKit2WebExtension.Objects.DOMNode.DOMNode' -}
dOMHTMLSelectElementItem self index = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_html_select_element_item self' index
    checkUnexpectedReturnNULL "dOMHTMLSelectElementItem" result
    result' <- (newObject WebKit2WebExtension.DOMNode.DOMNode) result
    touchManagedPtr self
    return result'

data DOMHTMLSelectElementItemMethodInfo
instance (signature ~ (CULong -> m WebKit2WebExtension.DOMNode.DOMNode), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementItemMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementItem

-- method DOMHTMLSelectElement::named_item
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #gchar", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Just (TInterface (Name {namespace = "WebKit2WebExtension", name = "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 ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    CString ->                              -- name : TBasicType TUTF8
    IO (Ptr WebKit2WebExtension.DOMNode.DOMNode)

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementNamedItem ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> T.Text
    {- ^ /@name@/: A @/gchar/@ -}
    -> m WebKit2WebExtension.DOMNode.DOMNode
    {- ^ __Returns:__ A 'GI.WebKit2WebExtension.Objects.DOMNode.DOMNode' -}
dOMHTMLSelectElementNamedItem self name = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    name' <- textToCString name
    result <- webkit_dom_html_select_element_named_item self' name'
    checkUnexpectedReturnNULL "dOMHTMLSelectElementNamedItem" result
    result' <- (newObject WebKit2WebExtension.DOMNode.DOMNode) result
    touchManagedPtr self
    freeMem name'
    return result'

data DOMHTMLSelectElementNamedItemMethodInfo
instance (signature ~ (T.Text -> m WebKit2WebExtension.DOMNode.DOMNode), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementNamedItemMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementNamedItem

-- method DOMHTMLSelectElement::remove
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "index", argType = TBasicType TLong, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #glong", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_select_element_remove" webkit_dom_html_select_element_remove :: 
    Ptr DOMHTMLSelectElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    CLong ->                                -- index : TBasicType TLong
    IO ()

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementRemove ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> CLong
    {- ^ /@index@/: A @/glong/@ -}
    -> m ()
dOMHTMLSelectElementRemove self index = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    webkit_dom_html_select_element_remove self' index
    touchManagedPtr self
    return ()

data DOMHTMLSelectElementRemoveMethodInfo
instance (signature ~ (CLong -> m ()), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementRemoveMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementRemove

-- method DOMHTMLSelectElement::set_autofocus
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #gboolean", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_select_element_set_autofocus" webkit_dom_html_select_element_set_autofocus :: 
    Ptr DOMHTMLSelectElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    CInt ->                                 -- value : TBasicType TBoolean
    IO ()

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementSetAutofocus ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> Bool
    {- ^ /@value@/: A 'Bool' -}
    -> m ()
dOMHTMLSelectElementSetAutofocus self value = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    let value' = (fromIntegral . fromEnum) value
    webkit_dom_html_select_element_set_autofocus self' value'
    touchManagedPtr self
    return ()

data DOMHTMLSelectElementSetAutofocusMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementSetAutofocusMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementSetAutofocus

-- method DOMHTMLSelectElement::set_disabled
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #gboolean", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_select_element_set_disabled" webkit_dom_html_select_element_set_disabled :: 
    Ptr DOMHTMLSelectElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    CInt ->                                 -- value : TBasicType TBoolean
    IO ()

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementSetDisabled ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> Bool
    {- ^ /@value@/: A 'Bool' -}
    -> m ()
dOMHTMLSelectElementSetDisabled self value = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    let value' = (fromIntegral . fromEnum) value
    webkit_dom_html_select_element_set_disabled self' value'
    touchManagedPtr self
    return ()

data DOMHTMLSelectElementSetDisabledMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementSetDisabledMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementSetDisabled

-- method DOMHTMLSelectElement::set_length
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "value", argType = TBasicType TULong, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #gulong", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : True
-- Skip return : False

foreign import ccall "webkit_dom_html_select_element_set_length" webkit_dom_html_select_element_set_length :: 
    Ptr DOMHTMLSelectElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    CULong ->                               -- value : TBasicType TULong
    Ptr (Ptr GError) ->                     -- error
    IO ()

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementSetLength ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> CULong
    {- ^ /@value@/: A @/gulong/@ -}
    -> m ()
    {- ^ /(Can throw 'Data.GI.Base.GError.GError')/ -}
dOMHTMLSelectElementSetLength self value = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    onException (do
        propagateGError $ webkit_dom_html_select_element_set_length self' value
        touchManagedPtr self
        return ()
     ) (do
        return ()
     )

data DOMHTMLSelectElementSetLengthMethodInfo
instance (signature ~ (CULong -> m ()), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementSetLengthMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementSetLength

-- method DOMHTMLSelectElement::set_multiple
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "value", argType = TBasicType TBoolean, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #gboolean", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_select_element_set_multiple" webkit_dom_html_select_element_set_multiple :: 
    Ptr DOMHTMLSelectElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    CInt ->                                 -- value : TBasicType TBoolean
    IO ()

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementSetMultiple ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> Bool
    {- ^ /@value@/: A 'Bool' -}
    -> m ()
dOMHTMLSelectElementSetMultiple self value = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    let value' = (fromIntegral . fromEnum) value
    webkit_dom_html_select_element_set_multiple self' value'
    touchManagedPtr self
    return ()

data DOMHTMLSelectElementSetMultipleMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementSetMultipleMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementSetMultiple

-- method DOMHTMLSelectElement::set_name
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #gchar", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_select_element_set_name" webkit_dom_html_select_element_set_name :: 
    Ptr DOMHTMLSelectElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    CString ->                              -- value : TBasicType TUTF8
    IO ()

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementSetName ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> T.Text
    {- ^ /@value@/: A @/gchar/@ -}
    -> m ()
dOMHTMLSelectElementSetName self value = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    value' <- textToCString value
    webkit_dom_html_select_element_set_name self' value'
    touchManagedPtr self
    freeMem value'
    return ()

data DOMHTMLSelectElementSetNameMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementSetNameMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementSetName

-- method DOMHTMLSelectElement::set_selected_index
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "value", argType = TBasicType TLong, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #glong", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- 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 ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    CLong ->                                -- value : TBasicType TLong
    IO ()

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementSetSelectedIndex ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> CLong
    {- ^ /@value@/: A @/glong/@ -}
    -> m ()
dOMHTMLSelectElementSetSelectedIndex self value = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    webkit_dom_html_select_element_set_selected_index self' value
    touchManagedPtr self
    return ()

data DOMHTMLSelectElementSetSelectedIndexMethodInfo
instance (signature ~ (CLong -> m ()), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementSetSelectedIndexMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementSetSelectedIndex

-- method DOMHTMLSelectElement::set_size
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "value", argType = TBasicType TLong, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #glong", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_select_element_set_size" webkit_dom_html_select_element_set_size :: 
    Ptr DOMHTMLSelectElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    CLong ->                                -- value : TBasicType TLong
    IO ()

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementSetSize ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> CLong
    {- ^ /@value@/: A @/glong/@ -}
    -> m ()
dOMHTMLSelectElementSetSize self value = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    webkit_dom_html_select_element_set_size self' value
    touchManagedPtr self
    return ()

data DOMHTMLSelectElementSetSizeMethodInfo
instance (signature ~ (CLong -> m ()), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementSetSizeMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementSetSize

-- method DOMHTMLSelectElement::set_value
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLSelectElement", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "value", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #gchar", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}]
-- Lengths : []
-- returnType : Nothing
-- throws : False
-- Skip return : False

foreign import ccall "webkit_dom_html_select_element_set_value" webkit_dom_html_select_element_set_value :: 
    Ptr DOMHTMLSelectElement ->             -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLSelectElement"})
    CString ->                              -- value : TBasicType TUTF8
    IO ()

{- |
/No description available in the introspection data./
-}
dOMHTMLSelectElementSetValue ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLSelectElement a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLSelectElement.DOMHTMLSelectElement' -}
    -> T.Text
    {- ^ /@value@/: A @/gchar/@ -}
    -> m ()
dOMHTMLSelectElementSetValue self value = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    value' <- textToCString value
    webkit_dom_html_select_element_set_value self' value'
    touchManagedPtr self
    freeMem value'
    return ()

data DOMHTMLSelectElementSetValueMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsDOMHTMLSelectElement a) => O.MethodInfo DOMHTMLSelectElementSetValueMethodInfo a signature where
    overloadedMethod _ = dOMHTMLSelectElementSetValue