with GNATCOM.Dispinterface;

package MSHTML.IHTMLElement5_Interface is

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

   procedure Initialize (This : in out IHTMLElement5_Type);

   function Pointer (This : IHTMLElement5_Type)
     return Pointer_To_IHTMLElement5;

   procedure Attach (This    : in out IHTMLElement5_Type;
                     Pointer : in     Pointer_To_IHTMLElement5);

   function getAttributeNode
     (This           : IHTMLElement5_Type;
      bstrName       : GNATCOM.Types.BSTR;
      Free           : Boolean := True)
     return Pointer_To_IHTMLDOMAttribute2;

   function setAttributeNode
     (This           : IHTMLElement5_Type;
      pattr          : Pointer_To_IHTMLDOMAttribute2)
     return Pointer_To_IHTMLDOMAttribute2;

   function removeAttributeNode
     (This           : IHTMLElement5_Type;
      pattr          : Pointer_To_IHTMLDOMAttribute2)
     return Pointer_To_IHTMLDOMAttribute2;

   function hasAttribute
     (This           : IHTMLElement5_Type;
      name           : GNATCOM.Types.BSTR;
      Free           : Boolean := True)
     return GNATCOM.Types.VARIANT_BOOL;

   procedure Put_role
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_role
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaBusy
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaBusy
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaChecked
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaChecked
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaDisabled
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaDisabled
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaExpanded
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaExpanded
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaHaspopup
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaHaspopup
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaHidden
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaHidden
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaInvalid
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaInvalid
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaMultiselectable
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaMultiselectable
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaPressed
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaPressed
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaReadonly
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaReadonly
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaRequired
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaRequired
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaSecret
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaSecret
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaSelected
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaSelected
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   function getAttribute
     (This             : IHTMLElement5_Type;
      strAttributeName : GNATCOM.Types.BSTR;
      Free             : Boolean := True)
     return GNATCOM.Types.VARIANT;

   procedure setAttribute
     (This             : IHTMLElement5_Type;
      strAttributeName : GNATCOM.Types.BSTR;
      AttributeValue   : GNATCOM.Types.VARIANT;
      Free             : Boolean := True);

   function removeAttribute
     (This             : IHTMLElement5_Type;
      strAttributeName : GNATCOM.Types.BSTR;
      Free             : Boolean := True)
     return GNATCOM.Types.VARIANT_BOOL;

   function Get_attributes
     (This : IHTMLElement5_Type)
     return Pointer_To_IHTMLAttributeCollection3;

   procedure Put_ariaValuenow
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaValuenow
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaPosinset
     (This : IHTMLElement5_Type;
      p    : Interfaces.C.short);

   function Get_ariaPosinset
     (This : IHTMLElement5_Type)
     return Interfaces.C.short;

   procedure Put_ariaSetsize
     (This : IHTMLElement5_Type;
      p    : Interfaces.C.short);

   function Get_ariaSetsize
     (This : IHTMLElement5_Type)
     return Interfaces.C.short;

   procedure Put_ariaLevel
     (This : IHTMLElement5_Type;
      p    : Interfaces.C.short);

   function Get_ariaLevel
     (This : IHTMLElement5_Type)
     return Interfaces.C.short;

   procedure Put_ariaValuemin
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaValuemin
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaValuemax
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaValuemax
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaControls
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaControls
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaDescribedby
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaDescribedby
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaFlowto
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaFlowto
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaLabelledby
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaLabelledby
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaActivedescendant
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaActivedescendant
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaOwns
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaOwns
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   function hasAttributes
     (This            : IHTMLElement5_Type)
     return GNATCOM.Types.VARIANT_BOOL;

   procedure Put_ariaLive
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaLive
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

   procedure Put_ariaRelevant
     (This : IHTMLElement5_Type;
      p    : GNATCOM.Types.BSTR;
      Free : Boolean := True);

   function Get_ariaRelevant
     (This : IHTMLElement5_Type)
     return GNATCOM.Types.BSTR;

end MSHTML.IHTMLElement5_Interface;

