import * as pinoLogger from 'pino'; import { BaseLogger, LevelWithSilent, ChildLoggerOptions, LoggerOptions, DestinationStream } from 'pino'; import { FrameworkError } from '../errors.js'; import { Serializable } from '../internals/serializable.js'; import { ValueOf, EnumFromUnion } from '../internals/types.js'; import '../internals/helpers/guards.js'; /** * Copyright 2025 © BeeAI a Series of LF Projects, LLC * SPDX-License-Identifier: Apache-2.0 */ interface LoggerBindings extends Record { } declare class LoggerError extends FrameworkError { } declare const LoggerLevel: EnumFromUnion; type LoggerLevelType = ValueOf; interface LoggerInput { name?: string; bindings?: LoggerBindings; level?: LoggerLevelType; raw?: ChildLoggerOptions; } declare class Logger extends Serializable implements BaseLogger { readonly input: LoggerInput; protected raw: pinoLogger.Logger; info: pinoLogger.LogFn; warn: pinoLogger.LogFn; fatal: pinoLogger.LogFn; error: pinoLogger.LogFn; debug: pinoLogger.LogFn; trace: pinoLogger.LogFn; silent: pinoLogger.LogFn; get msgPrefix(): string | undefined; get level(): LoggerLevelType; set level(value: LoggerLevelType); constructor(input: LoggerInput, raw?: pinoLogger.Logger); static of(input: LoggerInput): Logger; private init; static get root(): Logger; static get defaults(): Omit & { pretty: boolean; }; child(input?: LoggerInput): Logger; createSnapshot(): { input: LoggerInput; level: pinoLogger.LevelWithSilentOrString; }; loadSnapshot({ level, ...extra }: ReturnType): void; static createRaw(options?: LoggerOptions, stream?: DestinationStream | undefined): pinoLogger.Logger; } export { Logger, type LoggerBindings, LoggerError, type LoggerInput, LoggerLevel, type LoggerLevelType };