Path: blob/main/src/vs/workbench/services/configuration/common/jsonEditing.ts
3296 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45import { URI } from '../../../../base/common/uri.js';6import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js';7import { JSONPath } from '../../../../base/common/json.js';89export const IJSONEditingService = createDecorator<IJSONEditingService>('jsonEditingService');1011export const enum JSONEditingErrorCode {1213/**14* Error when trying to write to a file that contains JSON errors.15*/16ERROR_INVALID_FILE17}1819export class JSONEditingError extends Error {20constructor(message: string, public code: JSONEditingErrorCode) {21super(message);22}23}2425export interface IJSONValue {26path: JSONPath;27value: unknown;28}2930export interface IJSONEditingService {3132readonly _serviceBrand: undefined;3334write(resource: URI, values: IJSONValue[], save: boolean): Promise<void>;35}363738