import { PipelineRegistry } from './pipeline'; import { EditorState, LayerRegistry } from './layer'; import { AbleManager, AbleRegistry, EntityManager, EntityRegistry } from '../common'; import type { Playground } from './playground'; import { PlaygroundCommandRegistry, PlaygroundKeybindingRegistry, PlaygroundMenuRegistry } from './playground-registries'; import { PlaygroundConfig } from './playground-config'; export declare const PlaygroundContribution: unique symbol; export interface PlaygroundContribution { /** * 注册 Layer/Entity/Able 相关 * @param registry */ registerPlayground?(registry: PlaygroundRegistry): void; /** * 初始化entity完毕后触发 * @param playground */ onReady?(playground: Playground): void; /** * 销毁 * @param playground */ onDispose?(playground: Playground): void; } export declare class PlaygroundRegistry { protected readonly pipeline: PipelineRegistry; readonly ableManager: AbleManager; readonly entityManager: EntityManager; readonly playgroundConfig: PlaygroundConfig; readonly commands: PlaygroundCommandRegistry; readonly menus: PlaygroundMenuRegistry; readonly keybindings: PlaygroundKeybindingRegistry; config(config: Partial): void; registerLayer(layerRegistry: LayerRegistry): void; registerEntity(entityRegistry: EntityRegistry): void; registerAble(ableRegistry: AbleRegistry): void; registerEditorState(state: EditorState): void; } //# sourceMappingURL=playground-contribution.d.ts.map