contentful-batch-libs
Version:
Library modules used by contentful batch utility CLI tools.
41 lines (40 loc) • 1.66 kB
TypeScript
/// <reference types="node" />
/// <reference types="node" />
import type { ListrContext, ListrDefaultRenderer, ListrRendererFactory, ListrTaskWrapper } from 'listr2';
import EventEmitter from 'node:events';
import { type PathLike } from 'node:fs';
interface InfoMessage {
ts: string;
level: 'info';
info: string;
}
interface WarningMessage {
ts: string;
level: 'warning';
warning: string;
}
interface ErrorMessage {
ts: string;
level: 'error';
error: Error;
}
export type LogMessage = InfoMessage | WarningMessage | ErrorMessage;
export declare const logEmitter: EventEmitter;
export declare function formatLogMessageOneLine<TMessage extends LogMessage | {
level: undefined;
}>(logMessage: TMessage): string;
export declare function formatLogMessageLogfile(logMessage: Record<string, unknown>): Record<string, unknown>;
export declare function displayErrorLog(errorLog: LogMessage[]): void;
/**
* Write all log messages instead of infos to the error log file
*/
export declare function writeErrorLogFile(destination: PathLike, errorLog: ErrorMessage[]): Promise<void>;
/**
* Init listeners for log messages, transform them into proper format and logs/displays them
*/
export declare function setupLogging(log?: (WarningMessage | ErrorMessage)[]): (WarningMessage | ErrorMessage)[];
/**
* Format log message to display them as task status
*/
export declare function logToTaskOutput<Ctx = ListrContext, Renderer extends ListrRendererFactory = ListrDefaultRenderer, FallbackRenderer extends ListrRendererFactory = ListrDefaultRenderer>(task: ListrTaskWrapper<Ctx, Renderer, FallbackRenderer>): () => void;
export {};