diff --git a/power-assert-formatter/power-assert-formatter-tests.ts b/power-assert-formatter/power-assert-formatter-tests.ts
new file mode 100644
index 000000000..cd5a2680d
--- /dev/null
+++ b/power-assert-formatter/power-assert-formatter-tests.ts
@@ -0,0 +1,5 @@
+///
+
+powerAssertFormatter();
+
+powerAssertFormatter({lineSeparator: '\n'});
diff --git a/power-assert-formatter/power-assert-formatter.d.ts b/power-assert-formatter/power-assert-formatter.d.ts
new file mode 100644
index 000000000..c5ad3b6f5
--- /dev/null
+++ b/power-assert-formatter/power-assert-formatter.d.ts
@@ -0,0 +1,29 @@
+// Type definitions for power-assert-formatter
+// Project: https://github.com/twada/power-assert-formatter
+// Definitions by: vvakame
+// Definitions: https://github.com/borisyankov/DefinitelyTyped
+
+declare function powerAssertFormatter(options?: powerAssertFormatter.Options): powerAssertFormatter.Formatter;
+
+declare module powerAssertFormatter {
+ export interface Options {
+ lineDiffThreshold?: number;
+ maxDepth?: number;
+ outputOffset?: number;
+ anonymous?: string;
+ circular?: string;
+ lineSeparator?: string;
+ ambiguousEastAsianCharWidth?: number;
+ widthOf?: Function;
+ stringify?: Function;
+ diff?: Function;
+ writerClass?: {new (): any;};
+ renderers?: any[]; // { string | Function }[]
+ }
+
+ export interface Formatter {
+ (powerAssertContext: any): string;
+ }
+
+ export function defaultOptions(): Options;
+}