///
import { format, inspect } from "util";
import { $NodeJS } from "../typings/$types.js";
import { $LogArgs, $Scope } from "./$types.js";
import { Debug, DebugCreater } from "./common.js";
/**
* This is the Node.js implementation of `debug()`.
*/
declare class NodejsDebugCreater extends DebugCreater {
get colorTypeName(): "node";
init?(debug: Debug): void;
get utilFormat(): typeof format;
get utilInspect(): typeof inspect;
get colors(): number[];
/**
* Build up the default `inspectOpts` object from the environment variables.
*
* $ DEBUG_COLORS=no DEBUG_DEPTH=10 DEBUG_SHOW_HIDDEN=enabled node script.js
*/
inspectOpts: {
[key: string]: number | boolean | null;
};
canUseColors(): boolean;
/**
* Adds ANSI color escape codes if enabled.
*
* @api public
*/
formatArgs(debug: Debug, args: $LogArgs, scope?: $Scope): $LogArgs;
get nodeProcess(): $NodeJS.Process;
/**
* Invokes `util.format()` with the specified arguments and writes to stderr.
*/
printArgs(debug: Debug, args: $LogArgs, scope?: $Scope): void;
/**
* Save `namespaces`.
*
* @param {String} namespaces
* @api private
*/
protected save(namespaces: string): void;
/**
* Load `namespaces`.
*
* @return {String} returns the previously persisted debug modes
* @api private
*/
protected load(): string;
private readonly _htmlStylePlaceholder;
formatters: {
c: (debug: Debug, v: unknown) => string;
/**
* Map %o to `util.inspect()`, all on a single line.
*/
o: (debug: Debug, v: unknown) => string;
/**
* Map %O to `util.inspect()`, allowing multiple lines if needed.
*/
O: (debug: Debug, v: unknown) => string;
t(_debug: Debug, v: unknown): string;
s(debug: Debug, v: unknown): string;
d(debug: Debug, v: unknown): string;
};
}
declare const DebugCreaterFactory: () => NodejsDebugCreater;
export default DebugCreaterFactory;