import { ILogger, ILoggerOptions } from '../types/index.mjs';
import 'pino';
import 'winston';

declare class LoggerService implements ILogger {
    private readonly logger;
    constructor(options?: ILoggerOptions);
    info(message: string, ...optionalParams: any[]): void;
    warn(message: string, ...optionalParams: any[]): void;
    error(message: string, ...optionalParams: any[]): void;
    debug(message: string, ...optionalParams: any[]): void;
    infoWithExecutionTime(message: string, execution: {
        name: string;
        start: number;
    }, ...optionalParams: any[]): void;
    warnWithExecutionTime(message: string, execution: {
        name: string;
        start: number;
    }, ...optionalParams: any[]): void;
    errorWithExecutionTime(message: string, execution: {
        name: string;
        start: number;
    }, ...optionalParams: any[]): void;
    debugWithExecutionTime(message: string, execution: {
        name: string;
        start: number;
    }, ...optionalParams: any[]): void;
}

export { LoggerService };
