@nanggo/social-preview
Version:
Generate beautiful social media preview images from any URL
56 lines (55 loc) • 1.49 kB
TypeScript
/**
* Simple logging utility for the social preview generator
*/
export interface LogContext {
operation?: string;
url?: string;
hostname?: string;
actualIP?: string;
cachedIPs?: string[];
reason?: string;
blockedIPs?: string[];
allowedIPs?: string[];
address?: string;
family?: number;
totalAddresses?: number;
remoteAddress?: string;
remotePort?: number;
error?: string | Error;
metadata?: Record<string, unknown>;
}
/**
* Log levels
*/
export declare enum LogLevel {
DEBUG = "debug",
INFO = "info",
WARN = "warn",
ERROR = "error"
}
/**
* Simple logger implementation
*/
export declare class Logger {
private static instance;
private logLevel;
private constructor();
static getInstance(): Logger;
setLevel(level: LogLevel): void;
private shouldLog;
private formatMessage;
debug(message: string, context?: LogContext): void;
info(message: string, context?: LogContext): void;
warn(message: string, context?: LogContext): void;
error(message: string, context?: LogContext): void;
}
/**
* Default logger instance
*/
export declare const logger: Logger;
/**
* Convenience functions for common logging patterns
*/
export declare const logImageFetchError: (url: string, error: Error) => void;
export declare const logMetadataExtractionError: (url: string, error: Error) => void;
export declare const logTemplateError: (templateName: string, error: Error) => void;