/* ***** BEGIN LICENSE BLOCK *****
 * Version: GPL 3.0
 *
 * The contents of this file are subject to the General Public License
 * 3.0 (the "License"); you may not use this file except in compliance with
 * the License. You may obtain a copy of the License at
 * http://www.gnu.org/licenses/gpl.html
 *
 * Software distributed under the License is distributed on an "AS IS" basis,
 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
 * for the specific language governing rights and limitations under the
 * License.
 *
 * Author: Michel Verbraak (info@1st-setup.nl)
 * Website: http://www.1st-setup.nl/
 * email: info@1st-setup.nl
 *
 * This interface can be used to for updates
 *
 * ***** BEGIN LICENSE BLOCK *****/

#include "nsISupports.idl"

[scriptable, uuid(e491a5d9-678a-4b2c-8d7f-c1a8f8ff40e8)]
interface mivExchangeStatistics : nsISupports
{

  void setServerVersion(in AUTF8String aURL, in AUTF8String aVersion, in unsigned long long aMajorVersion, in unsigned long long aMinorVersion);
  AUTF8String getServerVersion([optional] in AUTF8String aURL);
  unsigned long long getMajorVersion([optional] in AUTF8String aURL);
  unsigned long long getMinorVersion([optional] in AUTF8String aURL);

  void getURLList(out uint32_t count, [array,size_is(count),retval] out string aURLStr);
  void addDataRead(in AUTF8String aURL, in unsigned long long aSize);
  void addDataSend(in AUTF8String aURL, in unsigned long long aSize);

  void addXML2JXONObject();
  readonly attribute unsigned long long xml2jxonCount;

};
