sussudio
Version:
An unofficial VS Code Internal API
57 lines (56 loc) • 3.05 kB
text/typescript
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { Event } from "../../../base/common/event.mjs";
import { Disposable } from "../../../base/common/lifecycle.mjs";
import { IEnvironmentService } from "../../environment/common/environment.mjs";
import { IFileService } from "../../files/common/files.mjs";
import { IProductService } from "../../product/common/productService.mjs";
import { IStorageService } from "../../storage/common/storage.mjs";
import { IUserDataManifest, IUserDataSyncLogService, IUserDataSyncStoreService } from "./userDataSync.mjs";
interface IMachineData {
id: string;
name: string;
disabled?: boolean;
platform?: string;
}
export type IUserDataSyncMachine = Readonly<IMachineData> & {
readonly isCurrent: boolean;
};
export declare const IUserDataSyncMachinesService: import("../../instantiation/common/instantiation.mjs").ServiceIdentifier<IUserDataSyncMachinesService>;
export interface IUserDataSyncMachinesService {
_serviceBrand: any;
readonly onDidChange: Event<void>;
getMachines(manifest?: IUserDataManifest): Promise<IUserDataSyncMachine[]>;
addCurrentMachine(manifest?: IUserDataManifest): Promise<void>;
removeCurrentMachine(manifest?: IUserDataManifest): Promise<void>;
renameMachine(machineId: string, name: string): Promise<void>;
setEnablements(enbalements: [string, boolean][]): Promise<void>;
}
export declare function isWebPlatform(platform: string): boolean;
export declare class UserDataSyncMachinesService extends Disposable implements IUserDataSyncMachinesService {
private readonly storageService;
private readonly userDataSyncStoreService;
private readonly logService;
private readonly productService;
private static readonly VERSION;
private static readonly RESOURCE;
_serviceBrand: any;
private readonly _onDidChange;
readonly onDidChange: Event<void>;
private readonly currentMachineIdPromise;
private userData;
constructor(environmentService: IEnvironmentService, fileService: IFileService, storageService: IStorageService, userDataSyncStoreService: IUserDataSyncStoreService, logService: IUserDataSyncLogService, productService: IProductService);
getMachines(manifest?: IUserDataManifest): Promise<IUserDataSyncMachine[]>;
addCurrentMachine(manifest?: IUserDataManifest): Promise<void>;
removeCurrentMachine(manifest?: IUserDataManifest): Promise<void>;
renameMachine(machineId: string, name: string, manifest?: IUserDataManifest): Promise<void>;
setEnablements(enablements: [string, boolean][]): Promise<void>;
private computeCurrentMachineName;
private readMachinesData;
private writeMachinesData;
private readUserData;
private parse;
}
export {};