/** * Log levels following syslog severity (https://en.wikipedia.org/wiki/Syslog#Severity_level) * Lower numbers = more severe, higher numbers = more verbose */ declare const LOG_LEVEL: { readonly ERR: 3; readonly WARN: 4; readonly NOTICE: 5; readonly INFO: 6; readonly DEBUG: 7; readonly TRACE: 8; }; export type LogLevelName = keyof typeof LOG_LEVEL; export type LogLevelValue = (typeof LOG_LEVEL)[LogLevelName]; export declare const LOG_LEVEL_DEFAULT: LogLevelValue; /** Valid log level names for CLI parsing */ export declare const LOG_LEVEL_NAMES: Lowercase[]; /** Parse a log level string (name or number) to its numeric value */ export declare function parseLogLevel(level: string): LogLevelValue; export interface OutputCtlOptions { logLevel?: LogLevelValue; jsonMode?: boolean; } /** Interface for output controllers (used to allow test mocks) */ export interface IOutputCtl { error(msg: unknown): void; warn(msg: unknown): void; notice(msg: unknown): void; info(msg: unknown): void; debug(msg: unknown): void; trace(msg: unknown): void; print(simple: unknown, json: unknown): void; } export default class OutputCtl implements IOutputCtl { private json; private logLevel; constructor({ logLevel, jsonMode }?: OutputCtlOptions); error(msg: unknown): void; warn(msg: unknown): void; notice(msg: unknown): void; info(msg: unknown): void; debug(msg: unknown): void; trace(msg: unknown): void; print(simple: unknown, json: unknown): void; } export {}; //# sourceMappingURL=OutputCtl.d.ts.map