@sussudio/platform
Version:
Internal APIs for VS Code's service injection the base services.
37 lines (35 loc) • 1.9 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 '@sussudio/base/common/event.mjs';
import { Disposable } from '@sussudio/base/common/lifecycle.mjs';
import { IEnvironmentService } from '../../environment/common/environment.mjs';
import { IStorageService } from '../../storage/common/storage.mjs';
import { ITelemetryService } from '../../telemetry/common/telemetry.mjs';
import { IUserDataSyncEnablementService, IUserDataSyncStoreManagementService, SyncResource } from './userDataSync.mjs';
export declare class UserDataSyncEnablementService extends Disposable implements IUserDataSyncEnablementService {
private readonly storageService;
private readonly telemetryService;
protected readonly environmentService: IEnvironmentService;
private readonly userDataSyncStoreManagementService;
_serviceBrand: any;
private _onDidChangeEnablement;
readonly onDidChangeEnablement: Event<boolean>;
private _onDidChangeResourceEnablement;
readonly onDidChangeResourceEnablement: Event<[SyncResource, boolean]>;
constructor(
storageService: IStorageService,
telemetryService: ITelemetryService,
environmentService: IEnvironmentService,
userDataSyncStoreManagementService: IUserDataSyncStoreManagementService,
);
isEnabled(): boolean;
canToggleEnablement(): boolean;
setEnablement(enabled: boolean): void;
isResourceEnabled(resource: SyncResource): boolean;
setResourceEnablement(resource: SyncResource, enabled: boolean): void;
getResourceSyncStateVersion(resource: SyncResource): string | undefined;
private storeResourceEnablement;
private onDidStorageChange;
}