/** * Declarative Logger Example * * This example demonstrates a clean, declarative approach to configuring * and using different logging adapters. */ interface LoggerConfig { type: 'console' | 'colorful' | 'pino' | 'noop'; context?: string; level?: string; format?: 'simple' | 'json' | 'colored'; useColors?: boolean; timestampFormat?: 'none' | 'iso' | 'time'; showEmoji?: boolean; levelColors?: Record; contextColor?: string; } declare const createLogger: (config: LoggerConfig) => import("bun_plugins").Logger; declare const loggerScenarios: ({ name: string; config: { type: "console"; context: string; timestampFormat?: undefined; showEmoji?: undefined; levelColors?: undefined; contextColor?: undefined; }; demo: (log: any) => void; } | { name: string; config: { type: "colorful"; context: string; timestampFormat: "time"; showEmoji: boolean; levelColors?: undefined; contextColor?: undefined; }; demo: (log: any) => void; } | { name: string; config: { type: "colorful"; levelColors: { info: string; warn: string; error: string; debug: string; }; contextColor: string; showEmoji: boolean; context?: undefined; timestampFormat?: undefined; }; demo: (log: any) => void; } | { name: string; config: { type: "pino"; context?: undefined; timestampFormat?: undefined; showEmoji?: undefined; levelColors?: undefined; contextColor?: undefined; }; demo: (log: any) => void; } | { name: string; config: { type: "noop"; context?: undefined; timestampFormat?: undefined; showEmoji?: undefined; levelColors?: undefined; contextColor?: undefined; }; demo: (log: any) => void; })[]; declare const pluginLoggerConfigs: { 'database-plugin': { type: "colorful"; context: string; timestampFormat: "time"; showEmoji: boolean; levelColors: { info: string; warn: string; error: string; }; }; 'api-plugin': { type: "colorful"; context: string; showEmoji: boolean; }; 'cache-plugin': { type: "noop"; }; 'auth-plugin': { type: "colorful"; context: string; contextColor: string; showEmoji: boolean; }; }; declare const demonstrateDeclarativeLogging: () => Promise; export { createLogger, loggerScenarios, pluginLoggerConfigs, demonstrateDeclarativeLogging }; //# sourceMappingURL=logger-declarative.d.ts.map