with GNATCOM.Dispinterface;

package MSHTML.IDOMMutationEvent_Interface is

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

   procedure Initialize (This : in out IDOMMutationEvent_Type);

   function Pointer (This : IDOMMutationEvent_Type)
     return Pointer_To_IDOMMutationEvent;

   procedure Attach (This    : in out IDOMMutationEvent_Type;
                     Pointer : in     Pointer_To_IDOMMutationEvent);

   function Get_relatedNode
     (This : IDOMMutationEvent_Type)
     return GNATCOM.Types.Pointer_To_IDispatch;

   function Get_prevValue
     (This : IDOMMutationEvent_Type)
     return GNATCOM.Types.BSTR;

   function Get_newValue
     (This : IDOMMutationEvent_Type)
     return GNATCOM.Types.BSTR;

   function Get_attrName
     (This : IDOMMutationEvent_Type)
     return GNATCOM.Types.BSTR;

   function Get_attrChange
     (This : IDOMMutationEvent_Type)
     return Interfaces.C.unsigned_short;

   procedure initMutationEvent
     (This           : IDOMMutationEvent_Type;
      eventType      : GNATCOM.Types.BSTR;
      canBubble      : GNATCOM.Types.VARIANT_BOOL;
      cancelable     : GNATCOM.Types.VARIANT_BOOL;
      relatedNodeArg : GNATCOM.Types.Pointer_To_IDispatch;
      prevValueArg   : GNATCOM.Types.BSTR;
      newValueArg    : GNATCOM.Types.BSTR;
      attrNameArg    : GNATCOM.Types.BSTR;
      attrChangeArg  : Interfaces.C.unsigned_short;
      Free           : Boolean := True);

end MSHTML.IDOMMutationEvent_Interface;

