sussudio
Version:
An unofficial VS Code Internal API
39 lines (38 loc) • 2.24 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 { IStorage } from "../../../base/parts/storage/common/storage.mjs";
import { IEnvironmentService } from "../../environment/common/environment.mjs";
import { IMainProcessService } from "../../ipc/electron-sandbox/services.mjs";
import { AbstractStorageService, StorageScope } from "../common/storage.mjs";
import { IUserDataProfile } from "../../userDataProfile/common/userDataProfile.mjs";
import { IAnyWorkspaceIdentifier } from "../../workspace/common/workspace.mjs";
export declare class NativeStorageService extends AbstractStorageService {
private readonly initialWorkspace;
private readonly initialProfiles;
private readonly mainProcessService;
private readonly environmentService;
private readonly applicationStorageProfile;
private readonly applicationStorage;
private profileStorageProfile;
private readonly profileStorageDisposables;
private profileStorage;
private workspaceStorageId;
private readonly workspaceStorageDisposables;
private workspaceStorage;
constructor(initialWorkspace: IAnyWorkspaceIdentifier | undefined, initialProfiles: {
defaultProfile: IUserDataProfile;
currentProfile: IUserDataProfile;
}, mainProcessService: IMainProcessService, environmentService: IEnvironmentService);
private createApplicationStorage;
private createProfileStorage;
private createWorkspaceStorage;
protected doInitialize(): Promise<void>;
protected getStorage(scope: StorageScope): IStorage | undefined;
protected getLogDetails(scope: StorageScope): string | undefined;
close(): Promise<void>;
protected switchToProfile(toProfile: IUserDataProfile, preserveData: boolean): Promise<void>;
protected switchToWorkspace(toWorkspace: IAnyWorkspaceIdentifier, preserveData: boolean): Promise<void>;
hasScope(scope: IAnyWorkspaceIdentifier | IUserDataProfile): boolean;
}