with GNATCOM.Dispinterface;

package MSHTML.IHTMLDOMAttribute2_Object is

   type IHTMLDOMAttribute2_Type is
     new GNATCOM.Dispinterface.Dispinterface_Type with null record;

   function Get_name
     (This : IHTMLDOMAttribute2_Type)
     return GNATCOM.Types.VARIANT;

   procedure Put_value
     (This : IHTMLDOMAttribute2_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True);

   function Get_value
     (This : IHTMLDOMAttribute2_Type)
     return GNATCOM.Types.VARIANT;

   function Get_expando
     (This : IHTMLDOMAttribute2_Type)
     return GNATCOM.Types.VARIANT;

   function Get_nodeType
     (This : IHTMLDOMAttribute2_Type)
     return GNATCOM.Types.VARIANT;

   function Get_parentNode
     (This : IHTMLDOMAttribute2_Type)
     return GNATCOM.Types.VARIANT;

   function Get_childNodes
     (This : IHTMLDOMAttribute2_Type)
     return GNATCOM.Types.VARIANT;

   function Get_firstChild
     (This : IHTMLDOMAttribute2_Type)
     return GNATCOM.Types.VARIANT;

   function Get_lastChild
     (This : IHTMLDOMAttribute2_Type)
     return GNATCOM.Types.VARIANT;

   function Get_previousSibling
     (This : IHTMLDOMAttribute2_Type)
     return GNATCOM.Types.VARIANT;

   function Get_nextSibling
     (This : IHTMLDOMAttribute2_Type)
     return GNATCOM.Types.VARIANT;

   function Get_attributes
     (This : IHTMLDOMAttribute2_Type)
     return GNATCOM.Types.VARIANT;

   function Get_ownerDocument
     (This : IHTMLDOMAttribute2_Type)
     return GNATCOM.Types.VARIANT;

   function insertBefore
     (This     : IHTMLDOMAttribute2_Type;
      newChild : GNATCOM.Types.VARIANT;
      refChild : GNATCOM.Types.VARIANT
        := GNATCOM.Types.VARIANT_MISSING;
      Free     : Boolean := True)
     return GNATCOM.Types.VARIANT;

   function replaceChild
     (This     : IHTMLDOMAttribute2_Type;
      newChild : GNATCOM.Types.VARIANT;
      oldChild : GNATCOM.Types.VARIANT;
      Free     : Boolean := True)
     return GNATCOM.Types.VARIANT;

   function removeChild
     (This     : IHTMLDOMAttribute2_Type;
      oldChild : GNATCOM.Types.VARIANT;
      Free     : Boolean := True)
     return GNATCOM.Types.VARIANT;

   function appendChild
     (This     : IHTMLDOMAttribute2_Type;
      newChild : GNATCOM.Types.VARIANT;
      Free     : Boolean := True)
     return GNATCOM.Types.VARIANT;

   function hasChildNodes
     (This : IHTMLDOMAttribute2_Type)
     return GNATCOM.Types.VARIANT;

   function cloneNode
     (This  : IHTMLDOMAttribute2_Type;
      fDeep : GNATCOM.Types.VARIANT;
      Free  : Boolean := True)
     return GNATCOM.Types.VARIANT;

end MSHTML.IHTMLDOMAttribute2_Object;

