UNPKG

cs-element

Version:

Advanced reactive data management library with state machines, blueprints, persistence, compression, networking, and multithreading support

61 lines 1.99 kB
/** * Менеджер State Machine для CSElement */ import { StateMachineManager, IStateMachine, StateMachineConfig, TransitionResult } from '../types/state-machine-interfaces'; import { ICSElement } from '../types/interfaces'; /** * Реализация менеджера State Machine */ export declare class StateMachineManagerImpl implements StateMachineManager { private _stateMachines; constructor(); /** * Создать state machine для элемента */ create(element: ICSElement, config: StateMachineConfig): IStateMachine; /** * Получить state machine элемента */ get(elementId: string): IStateMachine | undefined; /** * Проверить, есть ли state machine для элемента */ has(elementId: string): boolean; /** * Удалить state machine элемента */ remove(elementId: string): boolean; /** * Получить все state machines */ getAll(): Map<string, IStateMachine>; /** * Очистить все state machines */ clear(): void; /** * Получить статистику */ getStats(): { total: number; byState: Map<string, number>; byName: Map<string, number>; }; /** * Найти state machines по критериям */ findByState(stateName: string): IStateMachine[]; /** * Найти state machines по имени */ findByName(name: string): IStateMachine[]; /** * Отправить событие всем state machines */ broadcastEvent(event: string, payload?: any): Promise<Map<string, any>>; /** * Отправить событие state machines в определенном состоянии */ sendToState(stateName: string, event: string, payload?: any): Promise<Map<string, TransitionResult>>; } //# sourceMappingURL=StateMachineManager.d.ts.map