UNPKG

@omniconvert/server-side-testing-sdk

Version:

TypeScript SDK for server-side A/B testing and experimentation

114 lines 2.43 kB
import { LogLevel } from '../types'; /** * Browser logger implementation * Provides structured logging for browser environments */ export declare class BrowserLogger { private logs; private maxLogs; private logLevel; private outputToConsole; constructor(logLevel?: LogLevel, maxLogs?: number, outputToConsole?: boolean); /** * Log debug message */ debug(message: string, context?: unknown): void; /** * Log info message */ info(message: string, context?: unknown): void; /** * Log notice message */ notice(message: string, context?: unknown): void; /** * Log warning message */ warning(message: string, context?: unknown): void; /** * Log error message */ error(message: string, context?: unknown): void; /** * Core logging method */ private log; /** * Check if log level should be output */ private shouldLog; /** * Output log entry to browser console */ private outputToBrowserConsole; /** * Get all logs */ getLogs(filterLevel?: LogLevel): LogEntry[]; /** * Get logs by level priority */ getLogsByPriority(minLevel: LogLevel): LogEntry[]; /** * Clear all logs */ clearLogs(): void; /** * Set log level */ setLogLevel(level: LogLevel): void; /** * Get current log level */ getLogLevel(): LogLevel; /** * Set maximum number of logs to keep */ setMaxLogs(maxLogs: number): void; /** * Get maximum number of logs */ getMaxLogs(): number; /** * Export logs as JSON */ exportLogs(): string; /** * Get log statistics */ getLogStats(): LogStats; /** * Enable/disable console output */ setConsoleOutput(enabled: boolean): void; /** * Check if console output is enabled */ isConsoleOutputEnabled(): boolean; /** * Generate unique log ID */ private generateLogId; } /** * Log entry interface */ export interface LogEntry { id: string; level: LogLevel; message: string; context?: unknown; timestamp: Date; } /** * Log statistics interface */ export interface LogStats { total: number; debug: number; info: number; notice: number; warning: number; error: number; } //# sourceMappingURL=BrowserLogger.d.ts.map