/** * Пример плагина для логирования операций CSElement */ import { CSElementPlugin } from '../types/plugin-interfaces'; export interface LoggingOptions { /** Включить логирование создания элементов */ logCreate?: boolean; /** Включить логирование операций с данными */ logData?: boolean; /** Включить логирование операций с элементами */ logElements?: boolean; /** Включить логирование уничтожения */ logDestroy?: boolean; /** Включить логирование производительности */ logPerformance?: boolean; /** Префикс для логов */ prefix?: string; /** Уровень детализации */ level?: 'basic' | 'detailed' | 'verbose'; } export declare class LoggingPlugin implements CSElementPlugin { readonly name = "logging"; readonly version = "1.0.0"; readonly description = "\u041F\u043B\u0430\u0433\u0438\u043D \u0434\u043B\u044F \u043B\u043E\u0433\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u044F \u043E\u043F\u0435\u0440\u0430\u0446\u0438\u0439 CSElement"; private options; constructor(options?: LoggingOptions); install(CSElementClass: any, options?: any): void; uninstall(): void; private logElementCreated; private logBeforeSetData; private logAfterSetData; private logBeforeDeleteData; private logAfterDeleteData; private logBeforeAddElement; private logAfterAddElement; private logBeforeRemoveElement; private logAfterRemoveElement; private logBeforeDestroy; private logAfterDestroy; private performanceMiddleware; private log; setLevel(level: 'basic' | 'detailed' | 'verbose'): void; setPrefix(prefix: string): void; getStats(): { level: string; prefix: string; enabledFeatures: string[]; }; } //# sourceMappingURL=LoggingPlugin.d.ts.map