UNPKG

@scenemesh/entity-engine-studio

Version:

Entity Engine Studio

65 lines 3.3 kB
export { PreviewPanel } from './components/preview'; export { StudioService } from './services/studio-service'; export { changeDetector } from './services/change-detector'; export { ViewOptionsEditor } from './components/view-editor'; export { WidgetConfigEditor } from './components/view-editor'; export { EnhancedFieldEditor } from './components/view-editor'; export { EntityEngineAPI } from './services/entity-engine-api'; export { UniversalFieldsEditor } from './components/view-editor'; export { HierarchicalViewEditor } from './components/view-editor'; export { HierarchicalModelEditor } from './components/model-editor'; export { UnifiedConfigurationWorkspace } from './components/workspace'; export { StudioEngineService } from './services/studio-engine-service'; export { studioRenderers, EntityEngineStudioLauncher } from './renderers'; export { StudioEngineProvider, useStudioEngineOptional } from './providers/studio-engine-provider'; export type { EditMode } from './types/editor'; export type { StudioPageInfo } from './types/index'; export type { StudioState, StudioConfig } from './services/studio-service'; export type { ChangeSet, ConfigSnapshot } from './services/change-detector'; export type { ConfigData, ViewOptions } from './services/studio-engine-service'; export type { UnifiedConfigurationWorkspaceProps } from './components/workspace'; export type { StudioEngineProviderProps } from './providers/studio-engine-provider'; export type { IEntityView, IEntityModel, IEntityField, IEntityEngine, IEntityViewField, } from '@scenemesh/entity-engine'; export interface StudioExtension { name: string; version: string; description?: string; editors?: { model?: React.ComponentType<any>; view?: React.ComponentType<any>; field?: React.ComponentType<any>; }; toolbar?: { items?: React.ComponentType<any>[]; }; panels?: { left?: React.ComponentType<any>[]; right?: React.ComponentType<any>[]; }; hooks?: { onModelSave?: (model: any) => Promise<void>; onViewSave?: (view: any) => Promise<void>; onConfigExport?: (config: any) => Promise<any>; onConfigImport?: (config: any) => Promise<any>; }; } export declare class StudioExtensionRegistry { private extensions; register(extension: StudioExtension): void; unregister(name: string): void; get(name: string): StudioExtension | undefined; getAll(): StudioExtension[]; getEditors(type: 'model' | 'view' | 'field'): (import("react").ComponentType<any> | undefined)[]; getToolbarItems(): import("react").ComponentType<any>[]; getPanels(position: 'left' | 'right'): import("react").ComponentType<any>[]; } export declare const studioExtensionRegistry: StudioExtensionRegistry; import { StudioEngineService } from './services/studio-engine-service'; export declare function createStudioInstance(engine: any): { service: StudioEngineService; extensionRegistry: StudioExtensionRegistry; }; export type { PageConfig, NewPageForm, EditPageForm, MenuStructure, PageConfigItem, StudioPageConfig, StudioPageConfigItem, } from './types'; export declare const STUDIO_VERSION = "0.0.4"; export declare const STUDIO_NAME = "@scenemesh/entity-engine-studio"; //# sourceMappingURL=index.d.ts.map