@eclipse-emfcloud/model-service
Version:
Model service framework
27 lines • 1.23 kB
TypeScript
import { ChangeSubscription } from '@eclipse-emfcloud/model-manager';
import { ModelManager } from '@eclipse-emfcloud/model-manager/lib/api/model-manager';
import { ModelLoadedCallback, ModelUnloadedCallback } from '../api';
import { ModelTriggerEngine } from './model-trigger-engine';
/**
* Protocol for a model manager with integrated trigger engine.
*/
export interface ModelServiceModelManager<K> extends ModelManager<K> {
/** The trigger engine to which triggers may be added. */
readonly triggerEngine: ModelTriggerEngine<K>;
}
/**
* Create a new model manager for model services.
* @returns the model manager
*/
export declare const createModelServiceModelManager: <K>() => ModelServiceModelManager<K>;
/**
* Specialization of the core Model Manager subscription protocol that adds
* optional call-backs for model load and unload notifications.
*/
export interface ModelManagerSubscription<K = string, M extends object = object> extends ChangeSubscription<K, M> {
/** Optional model load call-back. */
onModelLoaded?: ModelLoadedCallback<K>;
/** Optional model unload call-back. */
onModelUnloaded?: ModelUnloadedCallback<K, M>;
}
//# sourceMappingURL=model-service-model-manager.d.ts.map