/*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ import { createDecorator } from 'vs/platform/instantiation/common/instantiation'; import { NotebookCellTextModel } from 'vs/workbench/contrib/notebook/common/model/notebookCellTextModel'; import { INotebookTextModel, IOutputDto, IOutputItemDto } from 'vs/workbench/contrib/notebook/common/notebookCommon'; export enum CellExecutionUpdateType { Output = 1, OutputItems = 2, ExecutionState = 3, } export interface ICellExecuteOutputEdit { editType: CellExecutionUpdateType.Output; cellHandle: number; append?: boolean; outputs: IOutputDto[]; } export interface ICellExecuteOutputItemEdit { editType: CellExecutionUpdateType.OutputItems; append?: boolean; outputId: string; items: IOutputItemDto[]; } export const INotebookExecutionService = createDecorator('INotebookExecutionService'); export interface INotebookExecutionService { _serviceBrand: undefined; executeNotebookCells(notebook: INotebookTextModel, cells: Iterable): Promise; cancelNotebookCells(notebook: INotebookTextModel, cells: Iterable): Promise; cancelNotebookCellHandles(notebook: INotebookTextModel, cells: Iterable): Promise; }