import { IPublicApiHotkey, IPublicApiProject, IPublicApiSkeleton, IPublicApiSetters, IPublicApiMaterial, IPublicApiEvent, IPublicApiCommon, IPublicModelPluginContext, IPluginPreferenceMananger, IPublicModelEngineConfig, IPublicApiLogger, IPublicApiPlugins, IPublicTypePluginDeclaration, IPublicApiCanvas, IPublicApiWorkspace, IPublicEnumPluginRegisterLevel, IPublicModelWindow, IPublicApiCommonUI, IPublicApiCommand } from '@alilc/lowcode-types'; import { IPluginContextOptions, ILowCodePluginContextApiAssembler, ILowCodePluginContextPrivate } from './plugin-types'; export default class PluginContext implements IPublicModelPluginContext, ILowCodePluginContextPrivate { hotkey: IPublicApiHotkey; project: IPublicApiProject; skeleton: IPublicApiSkeleton; setters: IPublicApiSetters; material: IPublicApiMaterial; event: IPublicApiEvent; config: IPublicModelEngineConfig; common: IPublicApiCommon; logger: IPublicApiLogger; plugins: IPublicApiPlugins; preference: IPluginPreferenceMananger; pluginEvent: IPublicApiEvent; canvas: IPublicApiCanvas; workspace: IPublicApiWorkspace; registerLevel: IPublicEnumPluginRegisterLevel; editorWindow: IPublicModelWindow; commonUI: IPublicApiCommonUI; isPluginRegisteredInWorkspace: false; command: IPublicApiCommand; constructor(options: IPluginContextOptions, contextApiAssembler: ILowCodePluginContextApiAssembler); setPreference(pluginName: string, preferenceDeclaration: IPublicTypePluginDeclaration): void; }