UNPKG

@sussudio/platform

Version:

Internal APIs for VS Code's service injection the base services.

101 lines (99 loc) 3.8 kB
/*--------------------------------------------------------------------------------------------- * 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 { URI } from '@sussudio/base/common/uri.mjs'; import { IChannel, IServerChannel } from '@sussudio/base/parts/ipc/common/ipc.mjs'; import { ILogService } from '../../log/common/log.mjs'; import { IUserDataProfile, IUserDataProfilesService } from '../../userDataProfile/common/userDataProfile.mjs'; import { IUserDataManualSyncTask, IUserDataSyncResourceConflicts, IUserDataSyncResourceError, IUserDataSyncResource, ISyncResourceHandle, IUserDataSyncTask, IUserDataSyncService, SyncResource, SyncStatus, ISyncUserDataProfile, } from './userDataSync.mjs'; export declare class UserDataSyncChannel implements IServerChannel { private readonly service; private readonly userDataProfilesService; private readonly logService; private readonly manualSyncTasks; private readonly onManualSynchronizeResources; constructor( service: IUserDataSyncService, userDataProfilesService: IUserDataProfilesService, logService: ILogService, ); listen(_: unknown, event: string): Event<any>; call(context: any, command: string, args?: any): Promise<any>; private _call; private getManualSyncTask; private createManualSyncTask; private createKey; } export declare class UserDataSyncChannelClient extends Disposable implements IUserDataSyncService { private readonly userDataProfilesService; readonly _serviceBrand: undefined; private readonly channel; private _status; get status(): SyncStatus; private _onDidChangeStatus; readonly onDidChangeStatus: Event<SyncStatus>; get onDidChangeLocal(): Event<SyncResource>; private _conflicts; get conflicts(): IUserDataSyncResourceConflicts[]; private _onDidChangeConflicts; readonly onDidChangeConflicts: Event<IUserDataSyncResourceConflicts[]>; private _lastSyncTime; get lastSyncTime(): number | undefined; private _onDidChangeLastSyncTime; readonly onDidChangeLastSyncTime: Event<number>; private _onSyncErrors; readonly onSyncErrors: Event<IUserDataSyncResourceError[]>; get onDidResetLocal(): Event<void>; get onDidResetRemote(): Event<void>; constructor(userDataSyncChannel: IChannel, userDataProfilesService: IUserDataProfilesService); createSyncTask(): Promise<IUserDataSyncTask>; createManualSyncTask(): Promise<IUserDataManualSyncTask>; reset(): Promise<void>; resetRemote(): Promise<void>; resetLocal(): Promise<void>; hasPreviouslySynced(): Promise<boolean>; hasLocalData(): Promise<boolean>; accept( syncResource: IUserDataSyncResource, resource: URI, content: string | null, apply: | boolean | { force: boolean; }, ): Promise<void>; resolveContent(resource: URI): Promise<string | null>; getRemoteProfiles(): Promise<ISyncUserDataProfile[]>; getLocalSyncResourceHandles(syncResource: SyncResource, profile?: IUserDataProfile): Promise<ISyncResourceHandle[]>; getRemoteSyncResourceHandles( syncResource: SyncResource, profile?: ISyncUserDataProfile, ): Promise<ISyncResourceHandle[]>; getAssociatedResources(syncResourceHandle: ISyncResourceHandle): Promise< { resource: URI; comparableResource: URI; }[] >; getMachineId(syncResourceHandle: ISyncResourceHandle): Promise<string | undefined>; cleanUpRemoteData(): Promise<void>; replace(syncResourceHandle: ISyncResourceHandle): Promise<void>; private updateStatus; private updateConflicts; private updateLastSyncTime; }