diff --git a/debug/debug-tests.ts b/debug/debug-tests.ts
index 63a0a3ac4..a26400340 100644
--- a/debug/debug-tests.ts
+++ b/debug/debug-tests.ts
@@ -1,4 +1,3 @@
-///
///
import debug = require("debug");
@@ -6,7 +5,7 @@ import debug = require("debug");
debug.disable();
debug.enable("DefinitelyTyped:*");
-var log: debug.Debugger = debug("DefinitelyTyped:log");
+var log:debug.IDebugger = debug("DefinitelyTyped:log");
log("Just text");
log("Formatted test (%d arg)", 1);
@@ -15,6 +14,6 @@ log("Formatted %s (%d args)", "test", 2);
log("Enabled?: %s", debug.enabled("DefinitelyTyped:log"));
log("Namespace: %s", log.namespace);
-var error: debug.Debugger = debug("DefinitelyTyped:error");
+var error:debug.IDebugger = debug("DefinitelyTyped:error");
error.log = console.error.bind(console);
error("This should be printed to stderr");
diff --git a/debug/debug.d.ts b/debug/debug.d.ts
index 1a71725a8..b43cd238c 100644
--- a/debug/debug.d.ts
+++ b/debug/debug.d.ts
@@ -1,30 +1,38 @@
// Type definitions for debug
// Project: https://github.com/visionmedia/debug
-// Definitions by: Seon-Wook Park
+// Definitions by: Seon-Wook Park , Gal Talmor
// Definitions: https://github.com/borisyankov/DefinitelyTyped
-declare module "debug" {
-
- function d(namespace: string): d.Debugger;
-
- module d {
- export var log: Function;
-
- function enable(namespaces: string): void;
- function disable(): void;
-
- function enabled(namespace: string): boolean;
-
- export interface Debugger {
- (formatter: any, ...args: any[]): void;
-
- enabled: boolean;
- log: Function;
- namespace: string;
- }
- }
-
- export = d;
+declare var debug: debug.IDebug;
+// Support AMD require
+declare module 'debug' {
+ export = debug;
}
+declare module debug {
+ export interface IDebug {
+ (namespace: string): debug.IDebugger,
+ coerce: (val: any) => any,
+ disable: () => void,
+ enable: (namespaces: string) => void,
+ enabled: (namespaces: string) => boolean,
+
+ names: string[],
+ skips: string[],
+
+ formatters: IFormatters
+ }
+
+ export interface IFormatters {
+ [formatter: string]: Function
+ }
+
+ export interface IDebugger {
+ (formatter: any, ...args: any[]): void;
+
+ enabled: boolean;
+ log: Function;
+ namespace: string;
+ }
+}