import Bunyan from "bunyan";
import { INeuraLoggerConfig } from "../config/logger.config";
/**
 * Basic interface for loggers
 */
export interface INeuraLogger {
    debug: (msg: string, ...args: unknown[]) => void;
    info: (msg: string, ...args: unknown[]) => void;
    warn: (msg: string, ...args: unknown[]) => void;
    error: (msg: string, ...args: unknown[]) => void;
}
/**
 * Wrapper class for Bunyan logger.
 */
export declare class BunyanLogger implements INeuraLogger {
    protected config: INeuraLoggerConfig;
    protected static instance?: BunyanLogger;
    protected underlyingLogger?: Bunyan;
    constructor(config: INeuraLoggerConfig);
    verbos(msg: string, ...args: unknown[]): void;
    debug(msg: string, ...args: unknown[]): void;
    info(msg: string, ...args: unknown[]): void;
    warn(msg: string, ...args: unknown[]): void;
    error(msg: string, ...args: unknown[]): void;
}
