/* ***** 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"
#include "calITimezone.idl"
#include "calIDateTime.idl"
#include "mivExchangeTimeZone.idl"


interface mivIxml2jxon;

[scriptable, uuid(16093d9f-a9ac-41ab-9995-0a3a7423b45c)]
interface mivExchangeTimeZones : nsISupports
{

  void addURL(in AUTF8String aURL, in AUTF8String aUser, in jsval aCalendar);
  mivExchangeTimeZone getExchangeTimeZoneByCalTimeZone(in calITimezone aCalTimeZone, in AUTF8String aURL, in calIDateTime aIndexDate);
  AUTF8String getExchangeTimeZoneIdByCalTimeZone(in calITimezone aCalTimeZone, in AUTF8String aURL, in calIDateTime aIndexDate);
  AUTF8String getExchangeTimeZoneNameByCalTimeZone(in calITimezone aCalTimeZone, in AUTF8String aURL, in calIDateTime aIndexDate);

  calITimezone getCalTimeZoneByExchangeMeetingTimeZone(in AUTF8String aTimeZoneName, in calIDateTime aIndexDate);
  calITimezone getCalTimeZoneByExchangeTimeZone(in mivIxml2jxon aExchangeTimeZone, in AUTF8String aURL, in calIDateTime aIndexDate);

};
