{- |
Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License    : LGPL-2.1
Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc)

/No description available in the introspection data./
-}

#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
       && !defined(__HADDOCK_VERSION__))

module GI.WebKit2WebExtension.Objects.DOMHTMLOptionsCollection
    (

-- * Exported types
    DOMHTMLOptionsCollection(..)            ,
    IsDOMHTMLOptionsCollection              ,
    toDOMHTMLOptionsCollection              ,
    noDOMHTMLOptionsCollection              ,


 -- * Methods
-- ** getLength #method:getLength#

#if ENABLE_OVERLOADING
    DOMHTMLOptionsCollectionGetLengthMethodInfo,
#endif
    dOMHTMLOptionsCollectionGetLength       ,


-- ** getSelectedIndex #method:getSelectedIndex#

#if ENABLE_OVERLOADING
    DOMHTMLOptionsCollectionGetSelectedIndexMethodInfo,
#endif
    dOMHTMLOptionsCollectionGetSelectedIndex,


-- ** namedItem #method:namedItem#

#if ENABLE_OVERLOADING
    DOMHTMLOptionsCollectionNamedItemMethodInfo,
#endif
    dOMHTMLOptionsCollectionNamedItem       ,


-- ** setSelectedIndex #method:setSelectedIndex#

#if ENABLE_OVERLOADING
    DOMHTMLOptionsCollectionSetSelectedIndexMethodInfo,
#endif
    dOMHTMLOptionsCollectionSetSelectedIndex,




 -- * Properties
-- ** length #attr:length#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    DOMHTMLOptionsCollectionLengthPropertyInfo,
#endif
#if ENABLE_OVERLOADING
    dOMHTMLOptionsCollectionLength          ,
#endif
    getDOMHTMLOptionsCollectionLength       ,


-- ** selectedIndex #attr:selectedIndex#
{- | /No description available in the introspection data./
-}
#if ENABLE_OVERLOADING
    DOMHTMLOptionsCollectionSelectedIndexPropertyInfo,
#endif
    constructDOMHTMLOptionsCollectionSelectedIndex,
#if ENABLE_OVERLOADING
    dOMHTMLOptionsCollectionSelectedIndex   ,
#endif
    getDOMHTMLOptionsCollectionSelectedIndex,
    setDOMHTMLOptionsCollectionSelectedIndex,




    ) 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.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
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 GHC.OverloadedLabels as OL

import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMHTMLCollection as WebKit2WebExtension.DOMHTMLCollection
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMNode as WebKit2WebExtension.DOMNode
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMObject as WebKit2WebExtension.DOMObject

-- | Memory-managed wrapper type.
newtype DOMHTMLOptionsCollection = DOMHTMLOptionsCollection (ManagedPtr DOMHTMLOptionsCollection)
foreign import ccall "webkit_dom_html_options_collection_get_type"
    c_webkit_dom_html_options_collection_get_type :: IO GType

instance GObject DOMHTMLOptionsCollection where
    gobjectType = c_webkit_dom_html_options_collection_get_type


-- | Type class for types which can be safely cast to `DOMHTMLOptionsCollection`, for instance with `toDOMHTMLOptionsCollection`.
class (GObject o, O.IsDescendantOf DOMHTMLOptionsCollection o) => IsDOMHTMLOptionsCollection o
instance (GObject o, O.IsDescendantOf DOMHTMLOptionsCollection o) => IsDOMHTMLOptionsCollection o

instance O.HasParentTypes DOMHTMLOptionsCollection
type instance O.ParentTypes DOMHTMLOptionsCollection = '[WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollection, WebKit2WebExtension.DOMObject.DOMObject, GObject.Object.Object]

-- | Cast to `DOMHTMLOptionsCollection`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`.
toDOMHTMLOptionsCollection :: (MonadIO m, IsDOMHTMLOptionsCollection o) => o -> m DOMHTMLOptionsCollection
toDOMHTMLOptionsCollection = liftIO . unsafeCastTo DOMHTMLOptionsCollection

-- | A convenience alias for `Nothing` :: `Maybe` `DOMHTMLOptionsCollection`.
noDOMHTMLOptionsCollection :: Maybe DOMHTMLOptionsCollection
noDOMHTMLOptionsCollection = Nothing

#if ENABLE_OVERLOADING
type family ResolveDOMHTMLOptionsCollectionMethod (t :: Symbol) (o :: *) :: * where
    ResolveDOMHTMLOptionsCollectionMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "item" o = WebKit2WebExtension.DOMHTMLCollection.DOMHTMLCollectionItemMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "namedItem" o = DOMHTMLOptionsCollectionNamedItemMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "ref" o = GObject.Object.ObjectRefMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "getLength" o = DOMHTMLOptionsCollectionGetLengthMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "getSelectedIndex" o = DOMHTMLOptionsCollectionGetSelectedIndexMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod "setSelectedIndex" o = DOMHTMLOptionsCollectionSetSelectedIndexMethodInfo
    ResolveDOMHTMLOptionsCollectionMethod l o = O.MethodResolutionFailed l o

instance (info ~ ResolveDOMHTMLOptionsCollectionMethod t DOMHTMLOptionsCollection, O.MethodInfo info DOMHTMLOptionsCollection p) => OL.IsLabel t (DOMHTMLOptionsCollection -> p) where
#if MIN_VERSION_base(4,10,0)
    fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#else
    fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif

#endif

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

{- |
Get the value of the “@length@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' dOMHTMLOptionsCollection #length
@
-}
getDOMHTMLOptionsCollectionLength :: (MonadIO m, IsDOMHTMLOptionsCollection o) => o -> m CULong
getDOMHTMLOptionsCollectionLength obj = liftIO $ B.Properties.getObjectPropertyULong obj "length"

#if ENABLE_OVERLOADING
data DOMHTMLOptionsCollectionLengthPropertyInfo
instance AttrInfo DOMHTMLOptionsCollectionLengthPropertyInfo where
    type AttrAllowedOps DOMHTMLOptionsCollectionLengthPropertyInfo = '[ 'AttrGet]
    type AttrSetTypeConstraint DOMHTMLOptionsCollectionLengthPropertyInfo = (~) ()
    type AttrBaseTypeConstraint DOMHTMLOptionsCollectionLengthPropertyInfo = IsDOMHTMLOptionsCollection
    type AttrGetType DOMHTMLOptionsCollectionLengthPropertyInfo = CULong
    type AttrLabel DOMHTMLOptionsCollectionLengthPropertyInfo = "length"
    type AttrOrigin DOMHTMLOptionsCollectionLengthPropertyInfo = DOMHTMLOptionsCollection
    attrGet _ = getDOMHTMLOptionsCollectionLength
    attrSet _ = undefined
    attrConstruct _ = undefined
    attrClear _ = undefined
#endif

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

{- |
Get the value of the “@selected-index@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.get' dOMHTMLOptionsCollection #selectedIndex
@
-}
getDOMHTMLOptionsCollectionSelectedIndex :: (MonadIO m, IsDOMHTMLOptionsCollection o) => o -> m CLong
getDOMHTMLOptionsCollectionSelectedIndex obj = liftIO $ B.Properties.getObjectPropertyLong obj "selected-index"

{- |
Set the value of the “@selected-index@” property.
When <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> is enabled, this is equivalent to

@
'Data.GI.Base.Attributes.set' dOMHTMLOptionsCollection [ #selectedIndex 'Data.GI.Base.Attributes.:=' value ]
@
-}
setDOMHTMLOptionsCollectionSelectedIndex :: (MonadIO m, IsDOMHTMLOptionsCollection o) => o -> CLong -> m ()
setDOMHTMLOptionsCollectionSelectedIndex obj val = liftIO $ B.Properties.setObjectPropertyLong obj "selected-index" val

{- |
Construct a `GValueConstruct` with valid value for the “@selected-index@” property. This is rarely needed directly, but it is used by `Data.GI.Base.Constructible.new`.
-}
constructDOMHTMLOptionsCollectionSelectedIndex :: (IsDOMHTMLOptionsCollection o) => CLong -> IO (GValueConstruct o)
constructDOMHTMLOptionsCollectionSelectedIndex val = B.Properties.constructObjectPropertyLong "selected-index" val

#if ENABLE_OVERLOADING
data DOMHTMLOptionsCollectionSelectedIndexPropertyInfo
instance AttrInfo DOMHTMLOptionsCollectionSelectedIndexPropertyInfo where
    type AttrAllowedOps DOMHTMLOptionsCollectionSelectedIndexPropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
    type AttrSetTypeConstraint DOMHTMLOptionsCollectionSelectedIndexPropertyInfo = (~) CLong
    type AttrBaseTypeConstraint DOMHTMLOptionsCollectionSelectedIndexPropertyInfo = IsDOMHTMLOptionsCollection
    type AttrGetType DOMHTMLOptionsCollectionSelectedIndexPropertyInfo = CLong
    type AttrLabel DOMHTMLOptionsCollectionSelectedIndexPropertyInfo = "selected-index"
    type AttrOrigin DOMHTMLOptionsCollectionSelectedIndexPropertyInfo = DOMHTMLOptionsCollection
    attrGet _ = getDOMHTMLOptionsCollectionSelectedIndex
    attrSet _ = setDOMHTMLOptionsCollectionSelectedIndex
    attrConstruct _ = constructDOMHTMLOptionsCollectionSelectedIndex
    attrClear _ = undefined
#endif

#if ENABLE_OVERLOADING
instance O.HasAttributeList DOMHTMLOptionsCollection
type instance O.AttributeList DOMHTMLOptionsCollection = DOMHTMLOptionsCollectionAttributeList
type DOMHTMLOptionsCollectionAttributeList = ('[ '("coreObject", WebKit2WebExtension.DOMObject.DOMObjectCoreObjectPropertyInfo), '("length", DOMHTMLOptionsCollectionLengthPropertyInfo), '("selectedIndex", DOMHTMLOptionsCollectionSelectedIndexPropertyInfo)] :: [(Symbol, *)])
#endif

#if ENABLE_OVERLOADING
dOMHTMLOptionsCollectionLength :: AttrLabelProxy "length"
dOMHTMLOptionsCollectionLength = AttrLabelProxy

dOMHTMLOptionsCollectionSelectedIndex :: AttrLabelProxy "selectedIndex"
dOMHTMLOptionsCollectionSelectedIndex = AttrLabelProxy

#endif

#if ENABLE_OVERLOADING
type instance O.SignalList DOMHTMLOptionsCollection = DOMHTMLOptionsCollectionSignalList
type DOMHTMLOptionsCollectionSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])

#endif

-- method DOMHTMLOptionsCollection::get_length
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLOptionsCollection"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLOptionsCollection", 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_options_collection_get_length" webkit_dom_html_options_collection_get_length ::
    Ptr DOMHTMLOptionsCollection ->         -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLOptionsCollection"})
    IO CULong

{-# DEPRECATED dOMHTMLOptionsCollectionGetLength ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
{- |
/No description available in the introspection data./
-}
dOMHTMLOptionsCollectionGetLength ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLOptionsCollection a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLOptionsCollection.DOMHTMLOptionsCollection' -}
    -> m CULong
    {- ^ __Returns:__ A @/gulong/@ -}
dOMHTMLOptionsCollectionGetLength self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_html_options_collection_get_length self'
    touchManagedPtr self
    return result

#if ENABLE_OVERLOADING
data DOMHTMLOptionsCollectionGetLengthMethodInfo
instance (signature ~ (m CULong), MonadIO m, IsDOMHTMLOptionsCollection a) => O.MethodInfo DOMHTMLOptionsCollectionGetLengthMethodInfo a signature where
    overloadedMethod _ = dOMHTMLOptionsCollectionGetLength

#endif

-- method DOMHTMLOptionsCollection::get_selected_index
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLOptionsCollection"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLOptionsCollection", 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_options_collection_get_selected_index" webkit_dom_html_options_collection_get_selected_index ::
    Ptr DOMHTMLOptionsCollection ->         -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLOptionsCollection"})
    IO CLong

{-# DEPRECATED dOMHTMLOptionsCollectionGetSelectedIndex ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
{- |
/No description available in the introspection data./
-}
dOMHTMLOptionsCollectionGetSelectedIndex ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLOptionsCollection a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLOptionsCollection.DOMHTMLOptionsCollection' -}
    -> m CLong
    {- ^ __Returns:__ A @/glong/@ -}
dOMHTMLOptionsCollectionGetSelectedIndex self = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    result <- webkit_dom_html_options_collection_get_selected_index self'
    touchManagedPtr self
    return result

#if ENABLE_OVERLOADING
data DOMHTMLOptionsCollectionGetSelectedIndexMethodInfo
instance (signature ~ (m CLong), MonadIO m, IsDOMHTMLOptionsCollection a) => O.MethodInfo DOMHTMLOptionsCollectionGetSelectedIndexMethodInfo a signature where
    overloadedMethod _ = dOMHTMLOptionsCollectionGetSelectedIndex

#endif

-- method DOMHTMLOptionsCollection::named_item
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLOptionsCollection"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLOptionsCollection", 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_options_collection_named_item" webkit_dom_html_options_collection_named_item ::
    Ptr DOMHTMLOptionsCollection ->         -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLOptionsCollection"})
    CString ->                              -- name : TBasicType TUTF8
    IO (Ptr WebKit2WebExtension.DOMNode.DOMNode)

{-# DEPRECATED dOMHTMLOptionsCollectionNamedItem ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
{- |
/No description available in the introspection data./
-}
dOMHTMLOptionsCollectionNamedItem ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLOptionsCollection a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLOptionsCollection.DOMHTMLOptionsCollection' -}
    -> T.Text
    {- ^ /@name@/: A @/gchar/@ -}
    -> m WebKit2WebExtension.DOMNode.DOMNode
    {- ^ __Returns:__ A 'GI.WebKit2WebExtension.Objects.DOMNode.DOMNode' -}
dOMHTMLOptionsCollectionNamedItem self name = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    name' <- textToCString name
    result <- webkit_dom_html_options_collection_named_item self' name'
    checkUnexpectedReturnNULL "dOMHTMLOptionsCollectionNamedItem" result
    result' <- (newObject WebKit2WebExtension.DOMNode.DOMNode) result
    touchManagedPtr self
    freeMem name'
    return result'

#if ENABLE_OVERLOADING
data DOMHTMLOptionsCollectionNamedItemMethodInfo
instance (signature ~ (T.Text -> m WebKit2WebExtension.DOMNode.DOMNode), MonadIO m, IsDOMHTMLOptionsCollection a) => O.MethodInfo DOMHTMLOptionsCollectionNamedItemMethodInfo a signature where
    overloadedMethod _ = dOMHTMLOptionsCollectionNamedItem

#endif

-- method DOMHTMLOptionsCollection::set_selected_index
-- method type : OrdinaryMethod
-- Args : [Arg {argCName = "self", argType = TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLOptionsCollection"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitDOMHTMLOptionsCollection", 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_options_collection_set_selected_index" webkit_dom_html_options_collection_set_selected_index ::
    Ptr DOMHTMLOptionsCollection ->         -- self : TInterface (Name {namespace = "WebKit2WebExtension", name = "DOMHTMLOptionsCollection"})
    CLong ->                                -- value : TBasicType TLong
    IO ()

{-# DEPRECATED dOMHTMLOptionsCollectionSetSelectedIndex ["(Since version 2.22)","Use JavaScriptCore API instead"] #-}
{- |
/No description available in the introspection data./
-}
dOMHTMLOptionsCollectionSetSelectedIndex ::
    (B.CallStack.HasCallStack, MonadIO m, IsDOMHTMLOptionsCollection a) =>
    a
    {- ^ /@self@/: A 'GI.WebKit2WebExtension.Objects.DOMHTMLOptionsCollection.DOMHTMLOptionsCollection' -}
    -> CLong
    {- ^ /@value@/: A @/glong/@ -}
    -> m ()
dOMHTMLOptionsCollectionSetSelectedIndex self value = liftIO $ do
    self' <- unsafeManagedPtrCastPtr self
    webkit_dom_html_options_collection_set_selected_index self' value
    touchManagedPtr self
    return ()

#if ENABLE_OVERLOADING
data DOMHTMLOptionsCollectionSetSelectedIndexMethodInfo
instance (signature ~ (CLong -> m ()), MonadIO m, IsDOMHTMLOptionsCollection a) => O.MethodInfo DOMHTMLOptionsCollectionSetSelectedIndexMethodInfo a signature where
    overloadedMethod _ = dOMHTMLOptionsCollectionSetSelectedIndex

#endif