API Reference

Logger Interface

The Logger interface provides methods for logging at different levels:

typescript
interface Logger {
info(message: string, data?: unknown): void;
warn(message: string, data?: unknown): void;
error(message: string, data?: unknown): void;
success(message: string, data?: unknown): void;
debug(message: string, data?: unknown): void;
}

Logger Methods

MethodDescriptionUse Case
info(message, data?)Log informational messagesGeneral application flow, state changes
success(message, data?)Log successful operationsSuccessful API calls, database operations
warn(message, data?)Log warning messagesDeprecation notices, non-critical issues
error(message, data?)Log error messagesExceptions, failed operations
debug(message, data?)Log debug informationDetailed debugging, development-only logs

LoggerConfig

Configuration object for creating custom logger instances:

typescript
interface LoggerConfig {
enabled?: boolean;
debugEnabled?: boolean;
}

LogLevel

Enum representing the available log levels:

typescript
type LogLevel = "info" | "warn" | "error" | "success" | "debug";

LogEntry

Internal type representing a complete log entry with all metadata:

typescript
interface LogEntry {
level: LogLevel;
message: string;
data?: unknown;
timestamp: Date;
caller: CallerInfo;
}

CallerInfo

Information about the location where the log was called:

typescript
interface CallerInfo {
file: string;
line: number;
column: number;
}

Functions

typescript
// Create a custom logger instance
function createLogger(config?: LoggerConfig): Logger;
// Default logger instance (pre-configured)
export const log: Logger;