/* ***** 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 "mivExchangeBaseItem.idl"

interface mivIxml2jxon;

[scriptable, uuid(4cd0469e-093f-4f7c-8ace-68f6ec76b36e)]
interface mivExchangeEvent : mivExchangeBaseItem
{
// calIEvent start.

	// these attributes are marked readonly, as the calIDates are owned
	// by the event; however, the actual calIDate objects are not read
	// only and are intended to be manipulated to adjust dates.

	/**
	* The (inclusive) start of the event.
	*/
	attribute calIDateTime startDate;

	/**
	* The (non-inclusive) end of the event.
	* Note that for all-day events, non-inclusive means that this will be set
	* to the day after the last day of the event.
	* If startDate.isDate is set, endDate.isDate must also be set.
	*/
	attribute calIDateTime endDate;

	/**
	* The duration of the event.
	* equal to endDate - startDate
	*/
	readonly attribute calIDuration duration;

// calIEvent end.

};
