cs-element
Version:
Advanced reactive data management library with state machines, blueprints, persistence, compression, networking, and multithreading support
95 lines • 3.12 kB
TypeScript
/**
* Плагин визуализации для CSElement
*/
import { CSElementPlugin, LifecycleHooks } from '../types/plugin-interfaces';
import { VisualizationManager } from '../visualization/VisualizationManager';
import { VisualizationOptions, VisualizationResult, VisualizationFormat, VisualizationTheme } from '../types/visualization-interfaces';
export declare class VisualizationPlugin implements CSElementPlugin {
name: string;
version: string;
description: string;
dependencies: never[];
private manager;
private isInstalled;
private CSElementClass;
constructor();
/**
* Установка плагина
*/
install(CSElementClass?: any): void;
/**
* Удаление плагина
*/
uninstall(): void;
/**
* Регистрация движков визуализации
*/
private registerEngines;
/**
* Расширение CSElement новыми методами
*/
private extendCSElement;
/**
* Удаление расширений CSElement
*/
private removeCSElementExtensions;
/**
* Настройка обработчиков событий
*/
private setupEventHandlers;
/**
* Получить поддерживаемые форматы
*/
getSupportedFormats(): VisualizationFormat[];
/**
* Получить статистику плагина
*/
getStats(): {
enginesCount: number;
themesCount: number;
supportedFormats: VisualizationFormat[];
isInstalled: boolean;
};
/**
* Хуки жизненного цикла
*/
hooks: LifecycleHooks;
}
export declare const visualizationPlugin: VisualizationPlugin;
declare module '../types/interfaces' {
interface ICSElement {
/**
* Визуализировать элемент
*/
visualize?(options?: VisualizationOptions): Promise<VisualizationResult>;
/**
* Получить ASCII представление
*/
toAscii?(options?: Partial<VisualizationOptions>): Promise<string>;
/**
* Получить SVG представление
*/
toSvg?(options?: Partial<VisualizationOptions>): Promise<string>;
/**
* Получить HTML представление
*/
toHtml?(options?: Partial<VisualizationOptions>): Promise<VisualizationResult>;
/**
* Вывести ASCII представление в консоль
*/
print?(options?: Partial<VisualizationOptions>): Promise<void>;
}
}
declare module '../core/CSElement' {
namespace CSElement {
/**
* Получить менеджер визуализации
*/
function getVisualizationManager(): VisualizationManager;
/**
* Добавить пользовательскую тему
*/
function addVisualizationTheme(theme: VisualizationTheme): void;
}
}
//# sourceMappingURL=VisualizationPlugin.d.ts.map