diff --git a/Headroom/headroom-tests.ts b/Headroom/headroom-tests.ts
new file mode 100644
index 0000000000..e0e83449eb
--- /dev/null
+++ b/Headroom/headroom-tests.ts
@@ -0,0 +1,13 @@
+///
+
+new Headroom(document.getElementById('siteHead'));
+
+new Headroom(document.getElementsByClassName('siteHead')[0]);
+
+new Headroom(document.getElementsByClassName('siteHead')[0], {
+ tolerance: 34
+});
+
+new Headroom(document.getElementsByClassName('siteHead')[0], {
+ offset: 500
+});
diff --git a/Headroom/headroom.d.ts b/Headroom/headroom.d.ts
new file mode 100644
index 0000000000..b4fc3133e7
--- /dev/null
+++ b/Headroom/headroom.d.ts
@@ -0,0 +1,28 @@
+// Type definitions for headroom.js v0.7.0
+// Project: http://wicky.nillia.ms/headroom.js/
+// Definitions by: Jakub Olek
+// Definitions: https://github.com/borisyankov/DefinitelyTyped
+
+interface HeadroomOptions {
+ offset?: number;
+ tolerance?: any;
+ classes?: {
+ initial?: string;
+ pinned?: string;
+ unpinned?: string;
+ top?: string;
+ notTop?: string;
+ };
+ scroller?: Element;
+ onPin?: () => void;
+ onUnPin?: () => void;
+ onTop?: () => void;
+ onNotTop?: () => void;
+
+}
+
+declare class Headroom {
+ constructor(element: Node, options?: HeadroomOptions);
+ constructor(element: Element, options?: HeadroomOptions);
+ init: () => void;
+}