advanced-logger
Version:
Advanced logger module extendable with plugins. Works in nodejs and browsers
26 lines (25 loc) • 771 B
TypeScript
/// <reference types="node" />
import { EventEmitter } from "events";
import ILogStoreConfig from "./interface/config/ILogStoreConfig";
import IDestructable from "./interface/IDestructable";
export default class LogStore<T> implements IDestructable {
/**
* Subscribe in order to receive "add", "cleared" events
*/
eventEmitter: EventEmitter;
private readonly logs;
private readonly config;
private identityMap;
private groupLeftIndex;
private groupableConfig;
private throttledOnGroupFinalize;
constructor(config?: ILogStoreConfig);
add(log: T): void;
clear(): void;
getAll(): T[];
size(): number;
destroy(): void;
private initTransformations;
private onAddToGroup;
private onGroupFinalize;
}