import { Label, LevelSelector, LogListener, UserConfiguration } from './_types/index.js';
import Log from './log.js';
import Tools from './tools.js';
export default class AdzeGlobal = Record> {
/**
* Global Adze configuration overrides.
*/
private config;
/**
* Incrementing ID counter for identifying logs.
*/
private pidCounter;
/**
* All log labels.
*/
private labels;
/**
* Counter for incrementing listener IDs.
*/
private _listenerCounter;
/**
* Map of log levels to log listeners
*/
private _levelsToListeners;
/**
* Cache of logs that have been terminated.
*/
private _cache;
constructor(configuration?: UserConfiguration);
/**
* Returns the cache of logs that have been terminated.
*/
get cache(): Log[];
/**
* Get the global Adze configuration overrides.
*/
get configuration(): UserConfiguration;
/**
* Get the next process ID.
*/
get pid(): number;
/**
* Tools for rerendering and filtering cached logs.
*/
get tools(): Tools;
/**
* Adds a log to the log cache.
*/
addLogToCache(log: Log): void;
/**
* Clears the log cache.
*/
clearCache(): void;
/**
* Get a label by name.
*/
getLabel(name: string): Label | undefined;
/**
* Sets a new label or overwrites an existing one.
*/
setLabel(name: string, label: Label): void;
/**
* Adds a log listener that will be called after a log has been terminated.
*/
addListener(levels: LevelSelector, listener: LogListener): number;
/**
* Removes a log listener by its ID.
*/
removeListener(id: number): void;
/**
* Returns an array of log listener callback functions.
*/
getListeners(level: number): LogListener[];
}