export enum LoggingLevel { Off = 0, Fatal = 1, Error = 2, Warning = 3, Info = 4, Debug = 5, Trace = 6, All = 7 } export type LoggingLevelType = 'Off' | 'Fatal' | 'Error' | 'Warning' | 'Info' | 'Debug' | 'Trace' | 'All'; export class LoggingLevelMapping { public static convertLoggingLevelToLoggingLevelType(level: LoggingLevel): LoggingLevelType { switch (level) { case LoggingLevel.Off: return 'Off'; case LoggingLevel.Fatal: return 'Fatal'; case LoggingLevel.Error: return 'Error'; case LoggingLevel.Warning: return 'Warning'; case LoggingLevel.Info: return 'Info'; case LoggingLevel.Debug: return 'Debug'; case LoggingLevel.Trace: return 'Trace'; case LoggingLevel.All: return 'All'; default: throw new Error(`[LoggingLevelMapping] Received unknown logging level [${level}]`); } } public static convertLoggingLevelTypeToLoggingLevel(level: LoggingLevelType): LoggingLevel { switch (level) { case 'Off': return LoggingLevel.Off; case 'Fatal': return LoggingLevel.Fatal; case 'Error': return LoggingLevel.Error; case 'Warning': return LoggingLevel.Warning; case 'Info': return LoggingLevel.Info; case 'Debug': return LoggingLevel.Debug; case 'Trace': return LoggingLevel.Trace; case 'All': return LoggingLevel.All; default: throw new Error(`[LoggingLevelMapping] Received unknown logging level type [${level}]`); } } }