type LogLevel = 'none' | 'error' | 'warn' | 'info' | 'debug'; /** * Transport-Interface – definiert, wohin ein Log geschrieben wird. * Du kannst z. B. einen HTTP-Transport für Remote-Logging implementieren. */ export interface LogTransport { /** Log-Methode, die vom Logger intern aufgerufen wird. */ log(level: LogLevel, args: readonly unknown[], namespace?: string): void; } /** Stencil-nativ: prod = !Build.isDev */ export declare const isProd: boolean; /** * Ändert das globale Log-Level zur Laufzeit und persistiert es. * Praktisch für Tests, Feature-Flags und DevTools. */ export declare function setLogLevel(level: LogLevel): void; /** Aktuelles Log-Level abfragen (z. B. in DevTools) */ export declare function getLogLevel(): LogLevel; /** * Ersetzt den aktiven Transport (z. B. für Remote-Logging). */ export declare function setTransport(t: LogTransport): void; /** * Erzeugt eine Logger-Instanz mit Namespace-Präfix. * Ideal für Komponenten: `const log = createLogger('MyComponent');` */ export declare function createLogger(namespace: string): { debug: (...args: unknown[]) => void; info: (...args: unknown[]) => void; warn: (...args: unknown[]) => void; error: (...args: unknown[]) => void; }; export declare const log: (...args: unknown[]) => void; export declare const info: (...args: unknown[]) => void; export declare const warn: (...args: unknown[]) => void; export declare const error: (...args: unknown[]) => void; declare global { interface Window { setLogLevel?: (level: LogLevel) => void; getLogLevel?: () => LogLevel; log?: (...args: unknown[]) => void; info?: (...args: unknown[]) => void; warn?: (...args: unknown[]) => void; error?: (...args: unknown[]) => void; } } export {};