kist
Version:
Package Pipeline Processor
63 lines (62 loc) • 2.41 kB
TypeScript
import { Logger } from "../../logger/Logger";
/**
* AbstractProcess provides consistent logging functionality to its subclasses.
* It leverages a centralized logger to manage different log levels and
* ensures logging consistency across the application.
*/
export declare abstract class AbstractProcess {
/**
* Logger instance for handling log messages.
*/
protected readonly logger: Logger;
/**
* Constructs an AbstractProcess instance.
* Initializes the logger to ensure logging capabilities are available to
* subclasses.
*/
constructor();
/**
* Logs an informational message with the originating class name as context.
* Use this for standard informational messages.
* @param message - The message to log.
*/
protected logInfo(message: string): void;
/**
* Logs a debug message with the originating class name as context.
* @param message - The debug message to log.
*/
protected logDebug(message: string): void;
/**
* Logs a warning message with the originating class name as context.
* Use this to highlight potential issues that are non-critical.
* @param message - The warning message to log.
*/
protected logWarn(message: string): void;
/**
* Logs an error message with the originating class name as context.
* Handles any type of error and ensures consistent error reporting.
* Use this for logging critical issues or exceptions.
*
* @param message - A custom message providing additional context for
* the error.
* @param error - (Optional) The error to log. Can be a string, an Error
* object, or other types.
*/
protected logError(message: string, error?: unknown): void;
/**
* Formats an error message for logging.
* Combines a custom message with additional error details if available.
*
* @param message - The base error message.
* @param error - Additional error information, such as an Error object.
* @returns A formatted string combining the message and error details.
*/
private formatError;
/**
* Logs a success message with the originating class name as context.
* Use this to indicate successful completion of a process or step.
*
* @param message - The success message to log.
*/
protected logSuccess(message: string): void;
}