UNPKG

slf

Version:
45 lines (44 loc) 1.06 kB
import { Logger } from './Logger'; export declare enum Level { Debug = 1, Info = 2, Warn = 3, Error = 4, Critical = 5 } export interface Event { timeStamp: number; params: any[]; name: string; level: Lowercase<keyof typeof Level>; } export interface Factory { (...events: Event[]): void; } export interface NextFunc { (error: Error | null, event: Event): void; } export interface Middleware { (event: Event, next: NextFunc): void; } interface Slf { _chain: Middleware[]; _queued: Event[][]; _factory: Factory | null; _logLevel: Level | null; hasWarned: boolean; } declare global { var __slf: Slf; } export declare class LoggerFactory { static getLogger(name: string): Logger; static setFactory(factory: Factory | null, level?: Level): void; /** * middleware has function(event, next) * next should be called next(err, event); */ static use(middleware: Middleware): void; private static getLogLevel; } export {};