import { LogLevel } from './LogLevel';
export declare type MessageFormatter = (level: LogLevel, timestamp: number, loggerName: string, message: string) => string;
export declare type OptionalFormatter = (obj: unknown) => string | unknown;
export interface Formatter {
    format: MessageFormatter;
    optional: OptionalFormatter;
}
/**
 * Defines a basic output-Format
 *
 * @param minMessageLength Defines the minimum length of the message
 * @param maxNameLength Defines the maximal output length of logger name
 */
export declare const defaultFormatter: (minMessageLength?: number, maxNameLength?: number) => Formatter;
export declare const jsonFormatter: Formatter;
export declare const padMessage: (message: string, length: number) => string;
export declare const truncateLoggerName: (loggerName: string, length: number) => string;
export declare function toJson(obj: unknown, spaces?: number): string | unknown;
