diff --git a/graham_scan/graham_scan-tests.ts b/graham_scan/graham_scan-tests.ts
new file mode 100644
index 000000000..4317db851
--- /dev/null
+++ b/graham_scan/graham_scan-tests.ts
@@ -0,0 +1,12 @@
+///
+
+// Based on the README.MD
+
+//Create a new instance.
+var convexHull = new ConvexHullGrahamScan();
+
+//add points (needs to be done for each point, a foreach loop on the input array can be used.)
+convexHull.addPoint(1, 2);
+
+//getHull() returns the array of points that make up the convex hull.
+var hullPoints = convexHull.getHull();
diff --git a/graham_scan/graham_scan.d.ts b/graham_scan/graham_scan.d.ts
new file mode 100644
index 000000000..617df2e7e
--- /dev/null
+++ b/graham_scan/graham_scan.d.ts
@@ -0,0 +1,8 @@
+// Type definitions for graham_scan v1.0.2
+// Project: https://github.com/brian3kb/graham_scan_js
+// Definitions by: Harm Berntsen
+// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
+declare class ConvexHullGrahamScan {
+ addPoint(x: number, y: number): void;
+ getHull(): {x: number, y: number}[];
+}