import { Logger as TsLogger } from "tslog"; import type { ConsoleStyle } from "./console.js"; import { type LogLevel } from "./levels.js"; export declare const DEFAULT_LOG_DIR: string; export declare const DEFAULT_LOG_FILE: string; export type LoggerSettings = { level?: LogLevel; file?: string; maxFileBytes?: number; consoleLevel?: LogLevel; consoleStyle?: ConsoleStyle; }; type LogObj = { date?: Date; } & Record; type ResolvedSettings = { level: LogLevel; file: string; maxFileBytes: number; }; export type LoggerResolvedSettings = ResolvedSettings; export type LogTransportRecord = Record; export type LogTransport = (logObj: LogTransportRecord) => void; declare function shouldSkipLoadConfigFallback(argv?: string[]): boolean; export declare function isFileLogLevelEnabled(level: LogLevel): boolean; export declare function getLogger(): TsLogger; export declare function getChildLogger(bindings?: Record, opts?: { level?: LogLevel; }): TsLogger; export declare function toPinoLikeLogger(logger: TsLogger, level: LogLevel): PinoLikeLogger; export type PinoLikeLogger = { level: string; child: (bindings?: Record) => PinoLikeLogger; trace: (...args: unknown[]) => void; debug: (...args: unknown[]) => void; info: (...args: unknown[]) => void; warn: (...args: unknown[]) => void; error: (...args: unknown[]) => void; fatal: (...args: unknown[]) => void; }; export declare function getResolvedLoggerSettings(): LoggerResolvedSettings; export declare function setLoggerOverride(settings: LoggerSettings | null): void; export declare function resetLogger(): void; export declare function registerLogTransport(transport: LogTransport): () => void; export declare const __test__: { shouldSkipLoadConfigFallback: typeof shouldSkipLoadConfigFallback; }; export {};