UNPKG

gnablib

Version:

A lean, zero dependency library to provide a useful base for your project.

27 lines (26 loc) 811 B
import { DateTimeUtc } from '../../datetime/dt.js'; export declare enum LogLevel { Debug = 0, Info = 1, Warn = 2, Error = 3 } export interface ILogEntry { get when(): DateTimeUtc; get level(): LogLevel; get message(): string; get fields(): Record<string, unknown>; toString(inColor: boolean): string; } export interface ILogTarget { supportColor: boolean; log(entry: ILogEntry): void; } export interface ILogOracle { set target(log: ILogTarget | undefined); get supportColor(): boolean; debug(message: string, fields?: Record<string, unknown>): void; info(message: string, fields?: Record<string, unknown>): void; warn(message: string, fields?: Record<string, unknown>): void; error(message: string, fields?: Record<string, unknown>): void; }