UNPKG

rexuws

Version:

An express-like framework built on top of uWebsocket.js aims at simple codebase and high performance

50 lines (49 loc) 1.72 kB
export declare type TLoggerLevelConsole = 'error' | 'log' | 'warn' | 'info' | 'trace'; export declare type TLoggerLevelDeprecate = 'deprecate'; export declare type TLoggerLevel = TLoggerLevelConsole | TLoggerLevelDeprecate; export interface ILoggerDeprecate { /** * Same as warning but prefixed with `[DEPRECATED]` */ deprecate(message?: any, ...optionalParams: any[]): void; } export interface ILoggerPrint { /** * Force print regardless of settings */ print?(message?: any, ...optionalParams: any[]): void; } export interface ILoggerOptions { /** * Set logger level on spefic methods * * If `true` enable on all methods * * @default ['error','warn','deprecate'] */ level?: TLoggerLevel | TLoggerLevel[] | boolean; /** * Set prefix for all logging method */ prefix?: string; } export interface ILoggerProvider extends Pick<Console, TLoggerLevelConsole> { } export interface ILogger extends ILoggerProvider, ILoggerDeprecate, ILoggerPrint { } export default class Logger implements ILogger { private _prefix; private _logger; private _level; info: (message?: any, ...optionalParams: any[]) => void; error: (message?: any, ...optionalParams: any[]) => void; log: (message?: any, ...optionalParams: any[]) => void; warn: (message?: any, ...optionalParams: any[]) => void; trace: (message?: any, ...optionalParams: any[]) => void; deprecate: (message?: any, ...optionalParams: any[]) => void; print?: (message?: any, ...optionalParams: any[]) => void; constructor(opts?: ILoggerOptions, logger?: ILoggerProvider); private off; private hasLogger; getOptions(): ILoggerOptions; }