export type LogLevel = "log" | "error" | "warn" | "info" | "debug" | "verbose"; export declare class Logger { #private; static onError: (message: string, ...args: Array | undefined>) => void; static onLog?: (structuredLog: Record) => void; constructor(name: string, level?: LogLevel, filteredKeys?: string[], jsonReplacer?: (key: string, value: unknown) => unknown, additionalFields?: () => Record); child(fields: Record): Logger; filter(...keys: string[]): Logger; static satisfiesLogLevel(logLevel: LogLevel, setLevel: LogLevel): boolean; log(message: string, ...args: Array | undefined>): void; error(message: string, ...args: Array | undefined>): void; warn(message: string, ...args: Array | undefined>): void; info(message: string, ...args: Array | undefined>): void; debug(message: string, ...args: Array | undefined>): void; verbose(message: string, ...args: Array | undefined>): void; } export declare function redact(value: unknown, filteredKeys?: string[]): unknown;