realm-object-server
Version:
81 lines (80 loc) • 2.94 kB
TypeScript
/// <reference types="node" />
import * as winston from "winston";
import * as events from "events";
export declare enum SyncLogLevel {
all = 0,
trace = 1,
debug = 2,
detail = 3,
info = 4,
warn = 5,
error = 6,
fatal = 7,
off = 8
}
export declare const levels: {
[x: number]: number;
readonly all: number;
readonly trace: number;
readonly debug: number;
readonly detail: number;
readonly info: number;
readonly warn: number;
readonly error: number;
readonly fatal: number;
readonly off: number;
};
export declare type HiResTime = [number, number];
export declare abstract class Logger extends events.EventEmitter {
withContext(ctx: object): Logger;
abstract log(level: string, msg: string, ctx?: object, hrt?: HiResTime): any;
close(): void;
trace(msg: string, ctx?: object): void;
debug(msg: string, ctx?: object): void;
detail(msg: string, ctx?: object): void;
info(msg: string, ctx?: object): void;
warn(msg: string, ctx?: object): void;
error(msg: string, ctx?: object): void;
fatal(msg: string, ctx?: object): void;
protected getHiResTime(): HiResTime;
}
export declare class MuteLogger extends Logger {
log(level: string, msg: string, ctx?: object, hrt?: HiResTime): void;
}
export declare class ThrowingLogger extends Logger {
protected levels: string[];
constructor(levels?: string[]);
log(level: string, msg: string, ctx?: object): void;
}
declare module "winston" {
interface FileTransportStatic {
new (options: winston.FileTransportOptions): winston.FileTransportInstance;
}
}
export declare class WinstonLogger extends Logger {
private impl;
private earlyMessages;
private earlyMessagesSkipped;
readonly logger: winston.LoggerInstance;
constructor(level?: string, bufsize?: number);
emit(topic: string, level: string, msg: string, ctx: object, hrt: HiResTime): boolean;
private dumpBuffer;
on(topic: string | symbol, listener: (...args: any[]) => void): this;
addListener(topic: string | symbol, listener: (...args: any[]) => void): this;
log(level: string, msg: string, ctx?: any, hrt?: HiResTime): void;
close(): void;
protected addConsole(options?: winston.ConsoleTransportOptions): void;
protected addFile(filename: string, options?: winston.FileTransportOptions): void;
}
export declare class ConsoleLogger extends WinstonLogger {
constructor(level?: string, transportOptions?: winston.ConsoleTransportOptions);
}
export declare class FileLogger extends WinstonLogger {
constructor(filename: string, level?: string, transportOptions?: winston.FileTransportOptions);
}
export declare class FileConsoleLogger extends WinstonLogger {
constructor(filename?: string, level?: string, transportOptions?: {
file?: winston.FileTransportOptions;
console?: winston.ConsoleTransportOptions;
});
}