theia-sprotty
Version:
Glue code for sprotty diagrams in a Theia IDE
34 lines • 1.96 kB
TypeScript
import { TheiaSprottyConnector } from '../sprotty/theia-sprotty-connector';
import { DiagramConfigurationRegistry } from './diagram-configuration';
import { OpenerOptions, OpenHandler, FrontendApplicationContribution, ApplicationShell } from "@theia/core/lib/browser";
import URI from "@theia/core/lib/common/uri";
import { DiagramWidget, DiagramWidgetFactory } from "./diagram-widget";
import { DiagramWidgetRegistry } from "./diagram-widget-registry";
import { Emitter, Event, SelectionService } from '@theia/core/lib/common';
import { EditorManager } from '@theia/editor/lib/browser';
export declare const DiagramManagerProvider: unique symbol;
export declare type DiagramManagerProvider = () => Promise<DiagramManager>;
export interface DiagramManager extends OpenHandler, FrontendApplicationContribution {
readonly diagramType: string;
readonly onDiagramOpened: Event<URI>;
}
export declare abstract class DiagramManagerImpl implements DiagramManager {
protected readonly shell: ApplicationShell;
protected readonly widgetRegistry: DiagramWidgetRegistry;
protected readonly selectionService: SelectionService;
protected diagramConfigurationRegistry: DiagramConfigurationRegistry;
protected editorManager: EditorManager;
protected readonly onDiagramOpenedEmitter: Emitter<URI>;
abstract readonly diagramType: string;
abstract iconClass: string;
readonly id: string;
readonly onDiagramOpened: Event<URI>;
canHandle(uri: URI, options?: OpenerOptions | undefined): number;
open(uri: URI, input?: OpenerOptions): Promise<DiagramWidget>;
protected getOrCreateDiagramWidget(uri: URI): Promise<DiagramWidget>;
protected createDiagramWidget(uri: URI): DiagramWidget;
protected addToShell(widget: DiagramWidget): void;
protected readonly diagramWidgetFactory: DiagramWidgetFactory;
readonly diagramConnector: TheiaSprottyConnector | undefined;
}
//# sourceMappingURL=diagram-manager.d.ts.map