import { IWAChatServerConfig } from '../../interface/IWAChatServerConfig';
import { ILogger } from '../../interface/ILogger';
import { LoggerDriver } from './LoggerDriver';
interface ILoggerDriverConstructor {
    new (config: IWAChatServerConfig): LoggerDriver;
}
export declare class Logger implements ILogger {
    private config;
    private driverOverride;
    private driverClasses;
    private drivers;
    constructor(config: IWAChatServerConfig, driverOverride?: LoggerDriver, // for tests only
    driverClasses?: Record<string, ILoggerDriverConstructor>);
    private initDrivers;
    private logWithAllDrivers;
    error(msg: string, ...params: Array<any>): Promise<void>;
    warn(msg: string, ...params: Array<any>): Promise<void>;
    info(msg: string, ...params: Array<any>): Promise<void>;
    debug(msg: string, ...params: Array<any>): Promise<void>;
}
export {};
