@qso-soft/shared
Version:
Shared library for QSO-soft
41 lines (40 loc) • 1.32 kB
TypeScript
import winston from 'winston';
import { WalletData } from '../types';
export interface LoggerData extends LoggerMeta {
action?: string;
status?: 'succeeded' | 'failed' | 'in progress';
txId?: number;
}
interface LoggerMeta {
wallet?: WalletData;
moduleName?: string;
}
declare module 'winston' {
interface Logger {
success: winston.LeveledLogMethod;
}
}
export declare class Logger {
private readonly logger;
private logsPath;
private fileName;
meta: LoggerMeta;
constructor(logsPath?: string, fileName?: string);
private buildPath;
private buildTemplate;
private isTransportExists;
private addTransport;
private removeTransport;
setLoggerMeta(meta: LoggerMeta): void;
successDisplay(msg: string, templateData?: LoggerData): void;
infoDisplay(msg: string, templateData?: LoggerData): void;
warningDisplay(msg: string, templateData?: LoggerData): void;
errorDisplay(msg: string, templateData?: LoggerData): void;
success(msg: string, templateData?: LoggerData): void;
info(msg: string, templateData?: LoggerData): void;
warning(msg: string, templateData?: LoggerData): void;
error(msg: string, templateData?: LoggerData): void;
}
export type LoggerType = Logger;
export declare const logger: Logger;
export {};