import { LumberjackLogPayload } from '../logs/lumberjack-log-payload';
import { LumberjackLogBuilder } from './lumberjack-log.builder';
import * as i0 from "@angular/core";
/**
 * Factory for a log builder with the specified log level and message.
 *
 * Use this to create a log before passing it to `LumberjackService`.
 *
 * Wraps `LumberjackLogBuilder`, supports dependency injection, and allows reuse
 * so that we don't have to new up log builders and pass `LumberjackTimeService`
 * to them.
 */
export declare class LumberjackLogFactory<TPayload extends LumberjackLogPayload | void = void> {
    #private;
    /**
     * Create a log builder for a critical log with the specified message.
     */
    createCriticalLog(message: string): LumberjackLogBuilder<TPayload>;
    /**
     * Create a log builder for a debug log with the specified message.
     */
    createDebugLog(message: string): LumberjackLogBuilder<TPayload>;
    /**
     * Create a log builder for an error log with the specified message.
     */
    createErrorLog(message: string): LumberjackLogBuilder<TPayload>;
    /**
     * Create a log builder for an info log with the specified message.
     */
    createInfoLog(message: string): LumberjackLogBuilder<TPayload>;
    /**
     * Create a log builder for a trace log with the specified message.
     */
    createTraceLog(message: string): LumberjackLogBuilder<TPayload>;
    /**
     * Create a log builder for a warning log with the specified message.
     */
    createWarningLog(message: string): LumberjackLogBuilder<TPayload>;
    static ɵfac: i0.ɵɵFactoryDeclaration<LumberjackLogFactory<any>, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<LumberjackLogFactory<any>>;
}
