import { HttpClient } from '@angular/common/http';
import { AppenderService } from './appender-impl.service';
import { AbstractLogger } from './log4a.model';
import * as i0 from "@angular/core";
export declare class Log4a {
    appenderService: AppenderService;
    http: HttpClient;
    abstractAppenders: AbstractLogger[];
    level: LogLevel;
    logWithDate: boolean;
    constructor(appenderService: AppenderService, http: HttpClient);
    loadConfigs(): Promise<void>;
    debug(msg: string, ...optionalParams: any[]): void;
    info(msg: string, ...optionalParams: any[]): void;
    warn(msg: string, ...optionalParams: any[]): void;
    error(msg: string, ...optionalParams: any[]): void;
    fatal(msg: string, ...optionalParams: any[]): void;
    log(msg: string, ...optionalParams: any[]): void;
    clear(): void;
    private shouldLog;
    private writeToLog;
    static ɵfac: i0.ɵɵFactoryDeclaration<Log4a, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<Log4a>;
}
export declare enum LogLevel {
    All = 0,
    Debug = 1,
    Info = 2,
    Warn = 3,
    Error = 4,
    Fatal = 5,
    Off = 6
}
export declare class LogEntry {
    entryDate: Date;
    message: string;
    level: LogLevel;
    extraInfo: any[];
    logWithDate: boolean;
    buildLogString(): void;
    private formatParams;
}
