/// import { Writable } from 'node:stream'; export declare enum LogLevel { TIME = "time", TRACE = "trace", DEBUG = "debug", INFO = "info", WARN = "warn", ERROR = "error" } interface LogLevelTimeConfig { value: 5; showName: 'TIME'; } export interface LogLevelNormalConfig { value: number; showName: string; color: string; colorName: string; } type LogLevelConfig = LogLevelNormalConfig | LogLevelTimeConfig; /** * @see https://en.wikipedia.org/wiki/ANSI_escape_code#Colors */ export declare const LogLevelRecord: Record; export type NormalLevel = LogLevel.TRACE | LogLevel.DEBUG | LogLevel.INFO | LogLevel.WARN | LogLevel.ERROR; type PartialRecordOfEnum = { [P in T]?: U; }; export type CustomSteamRecord = PartialRecordOfEnum; export interface SloggerOptions { /** * The level of logger, it can be `time` `trace` `debug` `warn` `error`,the default is `time`. */ level?: LogLevel; /** * Print the log to console in a fixed time, * all logs between the interval will be cached, * and then flush to console when the internal timer trigger. * it only takes effect when you use custom console format. */ flushInterval?: number; /** * The streams to storage the log */ streams?: CustomSteamRecord; /** * Whether disable the time prefix. */ disableTimePrefix?: boolean; /** * Whether disable the level string prefix. */ disableLevelPrefix?: boolean; /** * The new line separator in console and stream */ newLineSeparator?: string; } export {};