diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md
index ae430f57d..42cdffabe 100644
--- a/CONTRIBUTORS.md
+++ b/CONTRIBUTORS.md
@@ -309,6 +309,7 @@ All definitions files include a header with the author and editors, so at some p
* [text-buffer](https://github.com/atom/text-buffer) (by [vvakame](https://github.com/vvakame))
* [three.js](http://mrdoob.github.com/three.js/) (by [Kon](http://phyzkit.net/))
* [TimelineJS](https://github.com/NUKnightLab/TimelineJS) (by [Roland Zwaga](https://github.com/rolandzwaga))
+* [timezonecomplete](https://github.com/SpiritIT/timezonecomplete) (by [Rogier Schouten](https://github.com/rogierschouten))
* [Toastr](https://github.com/CodeSeven/toastr) (by [Boris Yankov](https://github.com/borisyankov))
* [trunk8](https://github.com/rviscomi/trunk8) (by [Blake Niemyjski](https://github.com/niemyjski))
* [TweenJS](http://www.createjs.com/#!/TweenJS) (by [Pedro Ferreira](https://bitbucket.org/drk4))
diff --git a/timezonecomplete/timezonecomplete-tests.ts b/timezonecomplete/timezonecomplete-tests.ts
new file mode 100644
index 000000000..03f94e44b
--- /dev/null
+++ b/timezonecomplete/timezonecomplete-tests.ts
@@ -0,0 +1,169 @@
+///
+
+import tc = require("timezonecomplete");
+
+var b: boolean = tc.isLeapYear(2014);
+var n: number = tc.daysInMonth(2014, 10);
+var s: string = tc.isoString(2014, 6, 30, 22, 10, 11, 230);
+
+// DURATION
+
+var d: tc.Duration;
+var d1: tc.Duration = tc.Duration.hours(24);
+var d2: tc.Duration = tc.Duration.minutes(24);
+var d3: tc.Duration = tc.Duration.seconds(24);
+var d4: tc.Duration = tc.Duration.milliseconds(24);
+var d5: tc.Duration = new tc.Duration(24);
+var d6: tc.Duration = new tc.Duration("00:01");
+var d7: tc.Duration = d6.clone();
+
+n = d7.wholeHours();
+n = d7.hours();
+n = d7.minutes();
+n = d7.minute();
+n = d7.seconds();
+n = d7.second();
+n = d7.milliseconds();
+n = d7.millisecond();
+s = d7.sign();
+b = d7.lessThan(d6);
+b = d7.greaterThan(d6);
+d = d7.min(d6);
+d = d7.max(d6);
+d = d7.multiply(3);
+d = d7.add(d6);
+d = d7.sub(d6);
+s = d7.toString();
+
+// TIMEZONE
+
+var t: tc.TimeZone;
+var k: tc.TimeZoneKind;
+
+t = tc.TimeZone.local();
+t = tc.TimeZone.utc();
+t = tc.TimeZone.zone(2);
+t = tc.TimeZone.zone("+01:00");
+s = t.name();
+k = t.kind();
+b = t.equals(t);
+b = t.isUtc();
+n = t.offsetForUtc(2014, 1, 1, 13, 0, 5, 123);
+n = t.offsetForZone(2014, 1, 1, 13, 0, 5, 123);
+n = t.offsetForUtcDate(new Date(2014, 1, 1, 13, 0, 5, 123), tc.DateFunctions.Get);
+n = t.offsetForZoneDate(new Date(2014, 1, 1, 13, 0, 5, 123), tc.DateFunctions.GetUTC);
+s = t.toString();
+s = tc.TimeZone.offsetToString(2);
+n = tc.TimeZone.stringToOffset("+00:01");
+
+// REALTIMESOURCE
+
+var date: Date = (new tc.RealTimeSource()).now();
+
+// DATETIME
+
+var dt: tc.DateTime;
+
+var ts: tc.TimeSource = tc.DateTime.timeSource;
+
+dt = tc.DateTime.nowLocal();
+dt = tc.DateTime.nowUtc();
+dt = tc.DateTime.now(tc.TimeZone.local());
+dt = new tc.DateTime();
+dt = new tc.DateTime("2014-01-01T13:05:01.123 UTC");
+dt = new tc.DateTime("2014-01-01T13:05:01.123", tc.TimeZone.utc());
+dt = new tc.DateTime(date, tc.DateFunctions.Get);
+dt = new tc.DateTime(date, tc.DateFunctions.Get, tc.TimeZone.utc());
+dt = new tc.DateTime(2014, 1, 1, 13, 5, 1, 123);
+dt = new tc.DateTime(2014, 1, 1, 13, 5, 1, 123, tc.TimeZone.utc());
+dt = new tc.DateTime(89949284);
+dt = new tc.DateTime(89949284, tc.TimeZone.utc());
+dt = dt.clone();
+t = dt.zone();
+n = dt.offset();
+n = dt.year();
+n = dt.month();
+n = dt.day();
+n = dt.hour();
+n = dt.minute();
+n = dt.second();
+n = dt.millisecond();
+n = dt.unixUtcMillis();
+n = dt.utcYear();
+n = dt.utcMonth();
+n = dt.utcDay();
+n = dt.utcHour();
+n = dt.utcMinute();
+n = dt.utcSecond();
+n = dt.utcMillisecond();
+dt.convert(tc.TimeZone.local());
+dt = dt.toZone(tc.TimeZone.utc());
+date = dt.toDate();
+dt = dt.add(tc.Duration.seconds(2));
+dt = dt.add(2, tc.TimeUnit.Year);
+dt = dt.add(2, tc.TimeUnit.Month);
+dt = dt.add(2, tc.TimeUnit.Week);
+dt = dt.add(2, tc.TimeUnit.Day);
+dt = dt.add(2, tc.TimeUnit.Hour);
+dt = dt.add(2, tc.TimeUnit.Minute);
+dt = dt.add(2, tc.TimeUnit.Second);
+dt = dt.addLocal(2, tc.TimeUnit.Second);
+dt = dt.sub(tc.Duration.seconds(2));
+dt = dt.sub(2, tc.TimeUnit.Year);
+dt = dt.sub(2, tc.TimeUnit.Month);
+dt = dt.sub(2, tc.TimeUnit.Week);
+dt = dt.sub(2, tc.TimeUnit.Day);
+dt = dt.sub(2, tc.TimeUnit.Hour);
+dt = dt.sub(2, tc.TimeUnit.Minute);
+dt = dt.sub(2, tc.TimeUnit.Second);
+dt = dt.subLocal(2, tc.TimeUnit.Second);
+d = dt.diff(new tc.DateTime(9289234, tc.TimeZone.local()));
+b = dt.lessThan(new tc.DateTime(9289234, tc.TimeZone.local()));
+b = dt.lessEqual(new tc.DateTime(9289234, tc.TimeZone.local()));
+b = dt.greaterThan(new tc.DateTime(9289234, tc.TimeZone.local()));
+b = dt.greaterEqual(new tc.DateTime(9289234, tc.TimeZone.local()));
+s = dt.toIsoString();
+s = dt.toString();
+s = dt.toUtcString();
+
+// PERIOD
+
+s = tc.periodDstToString(tc.PeriodDst.RegularIntervals);
+s = tc.periodDstToString(tc.PeriodDst.RegularLocalTime);
+
+var p: tc.Period;
+
+p = new tc.Period(tc.DateTime.nowLocal(), 1, tc.TimeUnit.Hour, tc.PeriodDst.RegularLocalTime);
+dt = p.start();
+n = p.amount();
+var tu: tc.TimeUnit = p.unit();
+var pd: tc.PeriodDst = p.dst();
+dt = p.findFirst(tc.DateTime.nowLocal());
+dt = p.findNext(dt);
+s = p.toIsoString();
+s = p.toString();
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/timezonecomplete/timezonecomplete.d.ts b/timezonecomplete/timezonecomplete.d.ts
index 085db4066..2f1b969bc 100644
--- a/timezonecomplete/timezonecomplete.d.ts
+++ b/timezonecomplete/timezonecomplete.d.ts
@@ -1,3 +1,7 @@
+// Type definitions for timezonecomplete
+// Project: https://github.com/SpiritIT/timezonecomplete
+// Definitions by: Rogier Schouten
+// Definitions: https://github.com/borisyankov/DefinitelyTyped
// Generated by dts-bundle 0.1.1
declare module 'timezonecomplete' {
@@ -225,12 +229,6 @@ declare module 'timezonecomplete' {
*/
static zone(s: string): TimeZone;
/**
- * Do not use this constructor, use the static
- * TimeZone.zone() method instead.
- * @param name NORMALIZED name, assumed to be correct
- */
- constructor(name: string);
- /**
* The time zone identifier. Can be an offset "-01:30" or an
* IANA time zone name "Europe/Amsterdam", or "localtime" for
* the local time zone.