/* -*- Mode: idl; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "nsISupports.idl"

#include "calIRecurrenceItem.idl"

interface calIItemBase;
interface calIDateTime;

interface calIIcalProperty;

// an interface implementing a RDATE or exception date

[scriptable, uuid(b4e6fade-22cc-4b8c-a521-77375f47fb33)]
interface calIRecurrenceDateSet : calIRecurrenceItem
{
  //
  // recurrence date set
  //
  void getDates (out unsigned long aCount,
                 [array,size_is(aCount),retval] out calIDateTime aDates);
  void setDates (in unsigned long aCount,
                 [array,size_is(aCount)] in calIDateTime aDates);

  void addDate (in calIDateTime aDate);
};
