summaryrefslogtreecommitdiffstats
path: root/comm/calendar/base/public/calITimezoneService.idl
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--comm/calendar/base/public/calITimezoneService.idl50
1 files changed, 50 insertions, 0 deletions
diff --git a/comm/calendar/base/public/calITimezoneService.idl b/comm/calendar/base/public/calITimezoneService.idl
new file mode 100644
index 0000000000..6c7ef24112
--- /dev/null
+++ b/comm/calendar/base/public/calITimezoneService.idl
@@ -0,0 +1,50 @@
+/* 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"
+
+interface calITimezone;
+
+/**
+ * Provides access to timezone definitions from the IANA Time Zone Database.
+ */
+[scriptable, uuid(ab1bfe6a-ee95-4038-b594-34aeeda9911a)]
+interface calITimezoneService : nsISupports
+{
+ /**
+ * All canonical timezone IDs provided by the current IANA Time Zone
+ * Database; intended to provide a list of selectable timezones, not to
+ * restrict the list of valid timezones.
+ */
+ readonly attribute Array<AUTF8String> timezoneIds;
+
+ /**
+ * The version of the IANA Time Zone Database provided.
+ */
+ readonly attribute AUTF8String version;
+
+ /**
+ * Get a timezone definition by timezone ID.
+ *
+ * @param tzid timezone ID for which to return definition
+ * @return a timezone object, or null if ID is not recognized
+ */
+ calITimezone getTimezone(in AUTF8String tzid);
+
+ /**
+ * The definition for the "floating" timezone, in which times are relative
+ * to local time.
+ */
+ readonly attribute calITimezone floating;
+
+ /**
+ * The timezone definition for Coordinated Universal Time.
+ */
+ readonly attribute calITimezone UTC;
+
+ /**
+ * Returns the current default timezone for calendars/events.
+ */
+ readonly attribute calITimezone defaultTimezone;
+};