import { TLoggerSerializer } from './types';
import { TFunction } from '../../types';
export * from './types';
export declare class Logger {
    title: string;
    constructor(title: string);
    debug(...messages: unknown[]): void;
    info(...messages: unknown[]): void;
    warn(...messages: unknown[]): void;
    error(...messages: unknown[]): void;
    fatal(...messages: unknown[]): void;
    private publish;
    static serializer: TLoggerSerializer | null;
    static external: Partial<Pick<Logger, 'debug' | 'info' | 'warn' | 'error' | 'fatal'>> | null;
    static useExternal(external: NonNullable<typeof Logger['external']>): typeof Logger & {
        external: Partial<Pick<Logger, "debug" | "info" | "warn" | "error" | "fatal">>;
    };
    static useSerializers(serializers: Record<string, TFunction<unknown, [any]>>): typeof Logger & {
        serializer: (key: string, value: unknown) => unknown;
    };
    static build(title: string): Logger;
}
//# sourceMappingURL=index.d.ts.map