import { Nullable, PlainObject, PlainObjectOf } from '@angular-ru/cdk/typings';
import { LogFn, LoggerLevel, Pipeline, TimerInfo } from './interfaces/logger.external';
import { LoggerOptionsImpl } from './logger.options';
import { ConsoleService } from './services/console.service';
import { CssFactory } from './services/css-factory.service';
import { LoggerFactory } from './services/factory.service';
import { GroupFactory } from './services/group-factory.service';
import { JsonFactory } from './services/json-factory.service';
import { TimerFactory } from './services/timer-factory.service';
import * as i0 from "@angular/core";
export declare class LoggerService {
    private readonly cssFactory;
    private readonly console;
    private readonly factory;
    private readonly groupFactory;
    private readonly jsonFactory;
    private readonly timerFactory;
    private readonly options;
    private readonly DEFAULT_DEPTH;
    constructor(cssFactory: CssFactory, console: ConsoleService, factory: LoggerFactory, groupFactory: GroupFactory, jsonFactory: JsonFactory, timerFactory: TimerFactory, options: LoggerOptionsImpl);
    get clear(): LogFn;
    get table(): LogFn;
    get log(): LogFn;
    get trace(): LogFn;
    get assert(): LogFn;
    get debug(): LogFn;
    get info(): LogFn;
    get warn(): LogFn;
    get error(): LogFn;
    get level(): LoggerLevel;
    set level(level: LoggerLevel);
    getCurrentLineStyle(): string;
    clearCssCurrentLine(): void;
    setLabels(labels: PlainObjectOf<string>): void;
    setColors(colors: PlainObjectOf<string>): void;
    pipe(...pipelines: Pipeline[]): LoggerService;
    groupCollapsed(title: string, pipeline?: Pipeline): LoggerService;
    close(): LoggerService;
    closeAll(): LoggerService;
    group(title: string, pipeline?: Pipeline): LoggerService;
    css(style: string): LoggerService;
    prettyJSON(json: PlainObject): string[];
    cssClass(cssClassName: string): LoggerService;
    startTime(title: string, level?: LoggerLevel): Nullable<TimerInfo>;
    endTime(info: Nullable<TimerInfo>, level?: LoggerLevel, isMillisecond?: boolean): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<LoggerService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<LoggerService>;
}
//# sourceMappingURL=logger.service.d.ts.map