interface InstallTriggerGlobal
{
/* IID: { 0x18c2f987, 0xb09f, 0x11d2, \
  {0xbc, 0xde, 0x00, 0x80, 0x5f, 0x0e, 0x13, 0x53}} */

    const int MAJOR_DIFF =  4;
    const int MINOR_DIFF =  3;
    const int REL_DIFF   =  2;
    const int BLD_DIFF   =  1;
    const int EQUAL      =  0;	

    boolean UpdateEnabled ();

    boolean Install(in JSObject installArray, in JSObject notifyFunction);

    boolean StartSoftwareUpdate(in wstring URL);

    boolean ConditionalSoftwareUpdate( in wstring URL, 
                                    in wstring regName,
                                    in long diffLevel, 
                                    in wstring version, 
                                    in long mode);

    long CompareVersion( in wstring regName, in wstring version );

    wstring GetVersion( in wstring component );
};