diff --git a/dot-prop/dot-prop-tests.ts b/dot-prop/dot-prop-tests.ts
new file mode 100644
index 0000000000..605a72de35
--- /dev/null
+++ b/dot-prop/dot-prop-tests.ts
@@ -0,0 +1,12 @@
+///
+
+import * as dotProp from 'dot-prop';
+
+dotProp.get({foo: {bar: 'unicorn'}}, 'foo.bar');
+dotProp.get({foo: {bar: 'a'}}, 'foo.notDefined.deep');
+dotProp.get({foo: {'dot.dot': 'unicorn'}}, 'foo.dot\\.dot');
+
+const obj = {foo: {bar: 'a'}};
+dotProp.set(obj, 'foo.bar', 'b');
+dotProp.set(obj, 'foo.baz', 'x');
+dotProp.set(obj, 'foo.dot\\.dot', 'unicorn');
diff --git a/dot-prop/dot-prop.d.ts b/dot-prop/dot-prop.d.ts
new file mode 100644
index 0000000000..c2f52c1627
--- /dev/null
+++ b/dot-prop/dot-prop.d.ts
@@ -0,0 +1,9 @@
+// Type definitions for dot-prop
+// Project: https://github.com/sindresorhus/dot-prop
+// Definitions by: Sam Verschueren
+// Definitions: https://github.com/borisyankov/DefinitelyTyped
+
+declare module "dot-prop" {
+ export function get(object: any, path: string): any;
+ export function set(object: any, path: string, value: any): void;
+}