@pisell/pisellos
Version:
一个可扩展的前端模块化SDK框架,支持插件系统
32 lines (31 loc) • 1.11 kB
TypeScript
import { Plugin, PluginOptions, Module, ModuleOptions, PisellCore, PisellOSOptions, BusinessContext, ModuleContextConfig } from '../types';
import { EffectsManager } from '../effects';
/**
* pisell OS 核心实现
*/
declare class PisellOSCore implements PisellCore {
private plugins;
private modules;
private stores;
effects: EffectsManager;
private debug;
context: BusinessContext;
constructor(options?: PisellOSOptions);
private initialize;
private log;
registerPlugin(plugin: Plugin, options?: PluginOptions): void;
getPlugin<T extends Plugin>(name: string): T | null;
hasPlugin(name: string): boolean;
registerModule(module: Module, options?: ModuleOptions): void;
unregisterModule(module: Module): void;
getModule<T extends Module>(name: string): T | null;
getModuleExports<T = any>(name: string): T | null;
hasModule(name: string): boolean;
destroy(): Promise<void>;
/**
* 验证上下文参数
*/
validateContext(config: ModuleContextConfig): boolean;
}
export { PisellOSCore };
export default PisellOSCore;