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;
