import * as pino from "pino"; export declare module Logging { /** * Basic common obvious log levels * * Note: don't count on the numeric value of these enums, as it can change without notice. Only used for ordering */ enum LogLevel { TRACE = 1, INFO = 2, WARNING = 3, ERROR = 4 } /** * Interface used internally in Eulith-web3js code to generate logging calls. Can then be directed to * whatever logging tool (e.g. pino) you'd like. */ interface ILogger { log(level: LogLevel, msg: string): any; } /** * ConsoleLogger can be used (with no dependencies except the 'console' object) - to generate logging * for Eulith-web3js applications. * * This defaults to only showing messages LogLevel INFO or higher. */ class ConsoleLogger implements ILogger { private readonly minLogLevel_; constructor(minLogLevel2Echo?: LogLevel); log(level: LogLevel, msg: string): void; } /** * PinoLogger is the production-ready logger for eulith-web3js. * See Pino (third party library) for more details about this logger */ class PinoLogger implements Logging.ILogger { private pinoInstance_; constructor(logger?: pino.Logger); log(level: Logging.LogLevel, msg: string): void; } }