sprotty-vscode-webview
Version:
Integration of Sprotty in a VS Code extensions (WebView part)
36 lines • 1.73 kB
TypeScript
import { IContextMenuItemProvider, MenuItem, PopupHoverMouseListener, SButtonImpl, SButtonSchema, SModelElementImpl, SModelRootImpl } from 'sprotty';
import { Action, Point, RequestPopupModelAction, SModelElement, SModelRoot } from 'sprotty-protocol';
import { Range } from 'vscode-languageserver-protocol';
import { CodeActionProvider } from './code-action-provider';
import { EditDiagramLocker } from './edit-diagram-locker';
import { IRootPopupModelProvider } from '../../root-popup-model-provider';
/**
* A popup-palette based on code actions.
*/
export declare class CodeActionPopupPaletteProvider implements IRootPopupModelProvider {
codeActionProvider: CodeActionProvider;
editDiagramLocker: EditDiagramLocker;
getPopupModel(action: RequestPopupModelAction, rootElement: SModelRoot): Promise<SModelElement | undefined>;
}
export interface PaletteButtonSchema extends SButtonSchema {
codeActionKind: string;
range: Range;
}
export declare class PaletteButton extends SButtonImpl {
codeActionKind: string;
range: Range;
}
export declare class PaletteMouseListener extends PopupHoverMouseListener {
codeActionProvider: CodeActionProvider;
mouseDown(target: SModelElementImpl, event: MouseEvent): (Action | Promise<Action>)[];
getWorkspaceEditAction(target: PaletteButton): Promise<Action>;
}
/**
* A command-palette based on code actions.
*/
export declare class CodeActionContextMenuProvider implements IContextMenuItemProvider {
codeActionProvider: CodeActionProvider;
editDiagramLocker: EditDiagramLocker;
getItems(root: Readonly<SModelRootImpl>, lastMousePosition?: Point | undefined): Promise<MenuItem[]>;
}
//# sourceMappingURL=code-action-popup-palette.d.ts.map