@zowe/imperative
Version:
framework for building configurable CLIs
72 lines • 2.57 kB
TypeScript
import { format, LoggerOptions } from "winston";
export declare const customLevels: {
levels: {
fatal: number;
error: number;
warn: number;
info: number;
mark: number;
debug: number;
trace: number;
all: number;
};
colors: {
fatal: string;
error: string;
warn: string;
info: string;
mark: string;
debug: string;
trace: string;
};
};
/**
* Maps log4js date formatting specifiers to dayjs format
* @param log4jsFormat The log4js date formatting to convert to dayjs format.
* @returns The corresponding dayjs format.
*/
export declare function mapLog4jsToDayjsFormat(log4jsFormat: string): string;
/**
* Translates a log4js pattern string into a Winston format object.
* Handles common tokens like %d, %p, %m, %c, %n, %h, %z, %%.
* Supports multiple %d tokens with different format specifiers (e.g., %d{yyyy/MM/dd}, %d{hh:mm:ss}).
* Strips color codes (%[ and %]).
* @param pattern The log4js pattern string.
* @returns A Winston format object.
*/
export declare function translateLog4jsPattern(pattern: string): ReturnType<typeof format.combine>;
export type PatternLayout = {
type: "pattern";
pattern: string;
};
export type AppenderWithPatternLayout = {
layout: PatternLayout;
};
export declare function isPatternLayout(layout: unknown): layout is PatternLayout;
/**
* Type guard for log4js appender with a pattern layout.
*/
export declare function hasPatternLayout(appender: unknown): appender is AppenderWithPatternLayout;
export declare const defaultPrintfFormat: ({ timestamp, level, message }: {
timestamp: unknown;
level: string;
message: unknown;
}) => string;
/**
* Translates a log4js-style config to a winston LoggerOptions config.
* Supports basic "console" and "file" appenders.
* Handles basic log4js pattern layouts.
* @param log4jsConfig The full log4js configuration object.
* @param level The desired log level for this specific logger configuration.
* @param includeAppenders An array of appender names to include in the returned transports.
*/
export declare function log4jsConfigToWinstonConfig(log4jsConfig: any, level: string, includeAppenders: string[]): LoggerOptions;
export type AppenderWithType = {
type: string;
filename?: string;
};
/**
* Type guard for log4js appender with a specific type.
*/
export declare function isAppenderWithType(appender: unknown, type: string): appender is AppenderWithType;
//# sourceMappingURL=log4jsToWinston.d.ts.map