export interface IDebug { (namespace: string): IDebugger; coerce: (val: any) => any; disable: () => string; enable: (namespaces: string) => void; enabled: (namespaces: string) => boolean; log: (...args: any[]) => any; names: RegExp[]; skips: RegExp[]; formatters: DebugFormatters; } export interface DebugFormatters { [formatter: string]: (v: any) => string; } export interface IDebugger { (...args: any[]): void; debug: (...args: any[]) => void; info: (...args: any[]) => void; warn: (...args: any[]) => void; error: (...args: any[]) => void; color: string; enabled: boolean; log: (...args: any[]) => any; namespace: string; destroy: () => boolean; } export declare enum DebugLogLevel { debug = "debug", info = "info", warn = "warn", error = "error" } export declare const Debug: IDebug;