@codingame/monaco-vscode-api 4.5.0 → 4.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/editor.api.d.ts +8 -0
  2. package/localExtensionHost.d.ts +41 -0
  3. package/package.json +10 -8
  4. package/service-override/accessibility.d.ts +5 -0
  5. package/service-override/ai.d.ts +5 -0
  6. package/service-override/authentication.d.ts +5 -0
  7. package/service-override/base.d.ts +5 -0
  8. package/service-override/bulkEdit.d.ts +5 -0
  9. package/service-override/chat.d.ts +5 -0
  10. package/service-override/comments.d.ts +5 -0
  11. package/service-override/configuration.d.ts +31 -0
  12. package/service-override/debug.d.ts +5 -0
  13. package/service-override/dialogs.d.ts +12 -0
  14. package/service-override/editSessions.d.ts +5 -0
  15. package/service-override/editor.d.ts +10 -0
  16. package/service-override/emmet.d.ts +5 -0
  17. package/service-override/environment.d.ts +10 -0
  18. package/service-override/explorer.d.ts +5 -0
  19. package/service-override/extensionGallery.d.ts +12 -0
  20. package/service-override/extensions.d.ts +43 -0
  21. package/service-override/files.d.ts +164 -0
  22. package/service-override/host.d.ts +5 -0
  23. package/service-override/interactive.d.ts +5 -0
  24. package/service-override/issue.d.ts +5 -0
  25. package/service-override/keybindings.d.ts +21 -0
  26. package/service-override/languageDetectionWorker.d.ts +5 -0
  27. package/service-override/languages.d.ts +6 -0
  28. package/service-override/layout.d.ts +128 -0
  29. package/service-override/lifecycle.d.ts +5 -0
  30. package/service-override/localization.d.ts +14 -0
  31. package/service-override/log.d.ts +14 -0
  32. package/service-override/markers.d.ts +5 -0
  33. package/service-override/model.d.ts +5 -0
  34. package/service-override/monarch.d.ts +5 -0
  35. package/service-override/multiDiffEditor.d.ts +5 -0
  36. package/service-override/notebook.d.ts +5 -0
  37. package/service-override/notifications.d.ts +5 -0
  38. package/service-override/outline.d.ts +5 -0
  39. package/service-override/output.d.ts +10 -0
  40. package/service-override/performance.d.ts +5 -0
  41. package/service-override/preferences.d.ts +5 -0
  42. package/service-override/quickaccess.d.ts +11 -0
  43. package/service-override/relauncher.d.ts +5 -0
  44. package/service-override/remoteAgent.d.ts +12 -0
  45. package/service-override/scm.d.ts +5 -0
  46. package/service-override/search.d.ts +12 -0
  47. package/service-override/secretStorage.d.ts +5 -0
  48. package/service-override/share.d.ts +5 -0
  49. package/service-override/snippets.d.ts +9 -0
  50. package/service-override/speech.d.ts +5 -0
  51. package/service-override/storage.d.ts +66 -0
  52. package/service-override/survey.d.ts +5 -0
  53. package/service-override/task.d.ts +5 -0
  54. package/service-override/terminal.d.ts +71 -0
  55. package/service-override/testing.d.ts +5 -0
  56. package/service-override/textmate.d.ts +6 -0
  57. package/service-override/theme.d.ts +7 -0
  58. package/service-override/timeline.d.ts +5 -0
  59. package/service-override/update.d.ts +5 -0
  60. package/service-override/userDataSync.d.ts +5 -0
  61. package/service-override/viewBanner.d.ts +6 -0
  62. package/service-override/viewCommon.d.ts +6 -0
  63. package/service-override/viewStatusBar.d.ts +6 -0
  64. package/service-override/viewTitleBar.d.ts +5 -0
  65. package/service-override/views.d.ts +47 -0
  66. package/service-override/walkthrough.d.ts +5 -0
  67. package/service-override/welcome.d.ts +5 -0
  68. package/service-override/workbench.d.ts +18 -0
  69. package/service-override/workingCopy.d.ts +5 -0
  70. package/service-override/workspaceTrust.d.ts +5 -0
  71. package/vscode/src/vs/base/browser/indexedDB.d.ts +17 -0
  72. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.d.ts +62 -0
  73. package/vscode/src/vs/platform/actions/browser/toolbar.d.ts +73 -0
  74. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.d.ts +43 -0
  75. package/vscode/src/vs/platform/files/browser/indexedDBFileSystemProvider.d.ts +48 -0
  76. package/vscode/src/vs/platform/files/common/inMemoryFilesystemProvider.d.ts +59 -0
  77. package/vscode/src/vs/platform/remote/common/remoteExtensionsScanner.service.d.ts +13 -0
  78. package/vscode/src/vs/workbench/browser/dnd.d.ts +14 -0
  79. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.d.ts +61 -0
  80. package/vscode/src/vs/workbench/browser/parts/banner/bannerPart.d.ts +46 -0
  81. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.d.ts +21 -0
  82. package/vscode/src/vs/workbench/browser/parts/compositePart.d.ts +89 -0
  83. package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.d.ts +108 -0
  84. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.d.ts +138 -0
  85. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.d.ts +35 -0
  86. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.d.ts +48 -0
  87. package/vscode/src/vs/workbench/browser/workbench.d.ts +10 -0
  88. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +795 -0
  89. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.d.ts +149 -0
  90. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalConfigHelper.d.ts +48 -0
  91. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalStatusList.d.ts +25 -0
  92. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.d.ts +8 -0
  93. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +168 -0
  94. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm-private.d.ts +55 -0
  95. package/vscode/src/vs/workbench/contrib/terminal/common/environmentVariable.d.ts +9 -0
  96. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +238 -0
  97. package/vscode/src/vs/workbench/services/activity/browser/activityService.d.ts +28 -0
  98. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.d.ts +53 -0
  99. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.service.d.ts +106 -0
  100. package/vscode/src/vs/workbench/services/extensions/browser/extensionService.d.ts +45 -0
  101. package/vscode/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.d.ts +11 -0
  102. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.d.ts +162 -0
  103. package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.d.ts +18 -0
  104. package/vscode/src/vs/workbench/services/extensions/common/extensionHostManagers.d.ts +39 -0
  105. package/vscode/src/vs/workbench/services/extensions/common/extensionHostProxy.d.ts +17 -0
  106. package/vscode/src/vs/workbench/services/extensions/common/extensionManifestPropertiesService.service.d.ts +20 -0
  107. package/vscode/src/vs/workbench/services/extensions/common/extensionRunningLocationTracker.d.ts +45 -0
  108. package/vscode/src/vs/workbench/services/extensions/common/extensionsProposedApi.d.ts +17 -0
  109. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.d.ts +6 -0
  110. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.d.ts +50 -0
  111. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.service.d.ts +40 -0
  112. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.d.ts +185 -0
  113. package/vscode/src/vs/workbench/services/storage/browser/storageService.d.ts +41 -0
  114. package/vscode/src/vs/workbench/services/textMate/browser/textMateTokenizationFeature.service.d.ts +11 -0
  115. package/vscode/src/vs/workbench/services/userData/browser/userDataInit.d.ts +11 -0
  116. package/vscode/src/vs/workbench/services/userData/browser/userDataInit.service.d.ts +9 -0
@@ -0,0 +1,18 @@
1
+ import { IExtensionDescription, ExtensionIdentifier } from '../../../../platform/extensions/common/extensions.js';
2
+
3
+ interface IReadOnlyExtensionDescriptionRegistry {
4
+ containsActivationEvent(activationEvent: string): boolean;
5
+ containsExtension(extensionId: ExtensionIdentifier): boolean;
6
+ getExtensionDescriptionsForActivationEvent(activationEvent: string): IExtensionDescription[];
7
+ getAllExtensionDescriptions(): IExtensionDescription[];
8
+ getExtensionDescription(extensionId: ExtensionIdentifier | string): IExtensionDescription | undefined;
9
+ getExtensionDescriptionByUUID(uuid: string): IExtensionDescription | undefined;
10
+ getExtensionDescriptionByIdOrUUID(extensionId: ExtensionIdentifier | string, uuid: string | undefined): IExtensionDescription | undefined;
11
+ }
12
+ declare class ExtensionDescriptionRegistrySnapshot {
13
+ readonly versionId: number;
14
+ readonly extensions: readonly IExtensionDescription[];
15
+ constructor(versionId: number, extensions: readonly IExtensionDescription[]);
16
+ }
17
+
18
+ export { ExtensionDescriptionRegistrySnapshot, type IReadOnlyExtensionDescriptionRegistry };
@@ -0,0 +1,39 @@
1
+ import { Event } from '../../../../base/common/event.js';
2
+ import { URI } from '../../../../base/common/uri.js';
3
+ import { ExtensionIdentifier, IExtensionDescription } from '../../../../platform/extensions/common/extensions.js';
4
+ import { ExtensionHostKind } from './extensionHostKind.js';
5
+ import { IExtensionDescriptionDelta } from './extensionHostProtocol.js';
6
+ import { IResolveAuthorityResult } from './extensionHostProxy.js';
7
+ import { ExtensionRunningLocation } from './extensionRunningLocation.js';
8
+ import { ExtensionHostStartup, ExtensionActivationReason, ActivationKind } from './extensions.js';
9
+ import { ResponsiveState } from './rpcProtocol.js';
10
+
11
+ interface IExtensionHostManager {
12
+ readonly pid: number | null;
13
+ readonly kind: ExtensionHostKind;
14
+ readonly startup: ExtensionHostStartup;
15
+ readonly friendyName: string;
16
+ readonly onDidExit: Event<[number, string | null]>;
17
+ readonly onDidChangeResponsiveState: Event<ResponsiveState>;
18
+ dispose(): void;
19
+ ready(): Promise<void>;
20
+ representsRunningLocation(runningLocation: ExtensionRunningLocation): boolean;
21
+ deltaExtensions(extensionsDelta: IExtensionDescriptionDelta): Promise<void>;
22
+ containsExtension(extensionId: ExtensionIdentifier): boolean;
23
+ activate(extension: ExtensionIdentifier, reason: ExtensionActivationReason): Promise<boolean>;
24
+ activateByEvent(activationEvent: string, activationKind: ActivationKind): Promise<void>;
25
+ activationEventIsDone(activationEvent: string): boolean;
26
+ getInspectPort(tryEnableInspector: boolean): Promise<number>;
27
+ resolveAuthority(remoteAuthority: string, resolveAttempt: number): Promise<IResolveAuthorityResult>;
28
+ /**
29
+ * Returns `null` if no resolver for `remoteAuthority` is found.
30
+ */
31
+ getCanonicalURI(remoteAuthority: string, uri: URI): Promise<URI | null>;
32
+ start(extensionRegistryVersionId: number, allExtensions: readonly IExtensionDescription[], myExtensions: ExtensionIdentifier[]): Promise<void>;
33
+ extensionTestsExecute(): Promise<number>;
34
+ setRemoteEnvironment(env: {
35
+ [key: string]: string | null;
36
+ }): Promise<void>;
37
+ }
38
+
39
+ export type { IExtensionHostManager };
@@ -0,0 +1,17 @@
1
+ import { RemoteAuthorityResolverErrorCode, ResolverResult } from '../../../../platform/remote/common/remoteAuthorityResolver.js';
2
+
3
+ interface IResolveAuthorityErrorResult {
4
+ type: 'error';
5
+ error: {
6
+ message: string | undefined;
7
+ code: RemoteAuthorityResolverErrorCode;
8
+ detail: any;
9
+ };
10
+ }
11
+ interface IResolveAuthorityOKResult {
12
+ type: 'ok';
13
+ value: ResolverResult;
14
+ }
15
+ type IResolveAuthorityResult = IResolveAuthorityErrorResult | IResolveAuthorityOKResult;
16
+
17
+ export type { IResolveAuthorityErrorResult, IResolveAuthorityOKResult, IResolveAuthorityResult };
@@ -0,0 +1,20 @@
1
+ import { ServiceIdentifier } from '../../../../platform/instantiation/common/instantiation.js';
2
+ import { IExtensionManifest, IExtensionIdentifier, ExtensionUntrustedWorkspaceSupportType, ExtensionVirtualWorkspaceSupportType } from '../../../../platform/extensions/common/extensions.js';
3
+ import { ExtensionKind } from '../../../../platform/environment/common/environment.js';
4
+
5
+ declare const IExtensionManifestPropertiesService: ServiceIdentifier<IExtensionManifestPropertiesService>;
6
+ interface IExtensionManifestPropertiesService {
7
+ readonly _serviceBrand: undefined;
8
+ prefersExecuteOnUI(manifest: IExtensionManifest): boolean;
9
+ prefersExecuteOnWorkspace(manifest: IExtensionManifest): boolean;
10
+ prefersExecuteOnWeb(manifest: IExtensionManifest): boolean;
11
+ canExecuteOnUI(manifest: IExtensionManifest): boolean;
12
+ canExecuteOnWorkspace(manifest: IExtensionManifest): boolean;
13
+ canExecuteOnWeb(manifest: IExtensionManifest): boolean;
14
+ getExtensionKind(manifest: IExtensionManifest): ExtensionKind[];
15
+ getUserConfiguredExtensionKind(extensionIdentifier: IExtensionIdentifier): ExtensionKind[] | undefined;
16
+ getExtensionUntrustedWorkspaceSupportType(manifest: IExtensionManifest): ExtensionUntrustedWorkspaceSupportType;
17
+ getExtensionVirtualWorkspaceSupportType(manifest: IExtensionManifest): ExtensionVirtualWorkspaceSupportType;
18
+ }
19
+
20
+ export { IExtensionManifestPropertiesService };
@@ -0,0 +1,45 @@
1
+ import { IConfigurationService } from '../../../../platform/configuration/common/configuration.service.js';
2
+ import { ExtensionKind } from '../../../../platform/environment/common/environment.js';
3
+ import { ExtensionIdentifier, IExtensionDescription, ExtensionIdentifierMap } from '../../../../platform/extensions/common/extensions.js';
4
+ import { ILogService } from '../../../../platform/log/common/log.service.js';
5
+ import { IWorkbenchEnvironmentService } from '../../environment/common/environmentService.service.js';
6
+ import { IReadOnlyExtensionDescriptionRegistry } from './extensionDescriptionRegistry.js';
7
+ import { IExtensionHostKindPicker, ExtensionHostKind } from './extensionHostKind.js';
8
+ import { IExtensionHostManager } from './extensionHostManagers.js';
9
+ import { IExtensionManifestPropertiesService } from './extensionManifestPropertiesService.service.js';
10
+ import { ExtensionRunningLocation } from './extensionRunningLocation.js';
11
+
12
+ declare class ExtensionRunningLocationTracker {
13
+ private readonly _registry;
14
+ private readonly _extensionHostKindPicker;
15
+ private readonly _environmentService;
16
+ private readonly _configurationService;
17
+ private readonly _logService;
18
+ private readonly _extensionManifestPropertiesService;
19
+ private _runningLocation;
20
+ private _maxLocalProcessAffinity;
21
+ private _maxLocalWebWorkerAffinity;
22
+ get maxLocalProcessAffinity(): number;
23
+ get maxLocalWebWorkerAffinity(): number;
24
+ constructor(_registry: IReadOnlyExtensionDescriptionRegistry, _extensionHostKindPicker: IExtensionHostKindPicker, _environmentService: IWorkbenchEnvironmentService, _configurationService: IConfigurationService, _logService: ILogService, _extensionManifestPropertiesService: IExtensionManifestPropertiesService);
25
+ set(extensionId: ExtensionIdentifier, runningLocation: ExtensionRunningLocation): void;
26
+ readExtensionKinds(extensionDescription: IExtensionDescription): ExtensionKind[];
27
+ getRunningLocation(extensionId: ExtensionIdentifier): ExtensionRunningLocation | null;
28
+ filterByRunningLocation(extensions: readonly IExtensionDescription[], desiredRunningLocation: ExtensionRunningLocation): IExtensionDescription[];
29
+ filterByExtensionHostKind(extensions: readonly IExtensionDescription[], desiredExtensionHostKind: ExtensionHostKind): IExtensionDescription[];
30
+ filterByExtensionHostManager(extensions: readonly IExtensionDescription[], extensionHostManager: IExtensionHostManager): IExtensionDescription[];
31
+ private _computeAffinity;
32
+ computeRunningLocation(localExtensions: IExtensionDescription[], remoteExtensions: IExtensionDescription[], isInitialAllocation: boolean): ExtensionIdentifierMap<ExtensionRunningLocation | null>;
33
+ private _doComputeRunningLocation;
34
+ initializeRunningLocation(localExtensions: IExtensionDescription[], remoteExtensions: IExtensionDescription[]): void;
35
+ /**
36
+ * Returns the running locations for the removed extensions.
37
+ */
38
+ deltaExtensions(toAdd: IExtensionDescription[], toRemove: ExtensionIdentifier[]): ExtensionIdentifierMap<ExtensionRunningLocation | null>;
39
+ /**
40
+ * Update `this._runningLocation` with running locations for newly enabled/installed extensions.
41
+ */
42
+ private _updateRunningLocationForAddedExtensions;
43
+ }
44
+
45
+ export { ExtensionRunningLocationTracker };
@@ -0,0 +1,17 @@
1
+ import { IExtensionDescription } from '../../../../platform/extensions/common/extensions.js';
2
+ import { ILogService } from '../../../../platform/log/common/log.service.js';
3
+ import { IProductService } from '../../../../platform/product/common/productService.service.js';
4
+ import { IWorkbenchEnvironmentService } from '../../environment/common/environmentService.service.js';
5
+
6
+ declare class ExtensionsProposedApi {
7
+ private readonly _logService;
8
+ private readonly _environmentService;
9
+ private readonly _envEnablesProposedApiForAll;
10
+ private readonly _envEnabledExtensions;
11
+ private readonly _productEnabledExtensions;
12
+ constructor(_logService: ILogService, _environmentService: IWorkbenchEnvironmentService, productService: IProductService);
13
+ updateEnabledApiProposals(extensions: IExtensionDescription[]): void;
14
+ private doUpdateEnabledApiProposals;
15
+ }
16
+
17
+ export { ExtensionsProposedApi };
@@ -0,0 +1,6 @@
1
+ declare const enum ResponsiveState {
2
+ Responsive = 0,
3
+ Unresponsive = 1
4
+ }
5
+
6
+ export { ResponsiveState };
@@ -0,0 +1,50 @@
1
+ import { URI } from '../../../../base/common/uri.js';
2
+ import { TunnelProtocol } from '../../../../platform/tunnel/common/tunnel.js';
3
+ import { TunnelPrivacy } from '../../../../platform/remote/common/remoteAuthorityResolver.js';
4
+ import '../../../../editor/editor.api.js';
5
+ import { IExtensionDescription } from '../../../../platform/extensions/common/extensions.js';
6
+ import { TunnelSource } from './tunnelModel.js';
7
+
8
+ declare enum TunnelType {
9
+ Candidate = "Candidate",
10
+ Detected = "Detected",
11
+ Forwarded = "Forwarded",
12
+ Add = "Add"
13
+ }
14
+ interface ITunnelItem {
15
+ tunnelType: TunnelType;
16
+ remoteHost: string;
17
+ remotePort: number;
18
+ localAddress?: string;
19
+ protocol: TunnelProtocol;
20
+ localUri?: URI;
21
+ localPort?: number;
22
+ name?: string;
23
+ closeable?: boolean;
24
+ source: {
25
+ source: TunnelSource;
26
+ description: string;
27
+ };
28
+ privacy: TunnelPrivacy;
29
+ processDescription?: string;
30
+ readonly label: string;
31
+ }
32
+ declare enum TunnelEditId {
33
+ None = 0,
34
+ New = 1,
35
+ Label = 2,
36
+ LocalPort = 3
37
+ }
38
+ interface HelpInformation {
39
+ extensionDescription: IExtensionDescription;
40
+ getStarted?: string | {
41
+ id: string;
42
+ };
43
+ documentation?: string;
44
+ issues?: string;
45
+ reportIssue?: string;
46
+ remoteName?: string[] | string;
47
+ virtualWorkspace?: string;
48
+ }
49
+
50
+ export { type HelpInformation, type ITunnelItem, TunnelEditId, TunnelType };
@@ -0,0 +1,40 @@
1
+ import { ServiceIdentifier } from '../../../../platform/instantiation/common/instantiation.js';
2
+ import { Event } from '../../../../base/common/event.js';
3
+ import { RemoteTunnel } from '../../../../platform/tunnel/common/tunnel.js';
4
+ import { IDisposable } from '../../../../base/common/lifecycle.js';
5
+ import { IEditableData } from '../../../common/views.js';
6
+ import { TunnelInformation } from '../../../../platform/remote/common/remoteAuthorityResolver.js';
7
+ import { TunnelModel, TunnelProperties, Attributes, TunnelCloseReason, CandidatePort } from './tunnelModel.js';
8
+ import { IExtensionPointUser } from '../../extensions/common/extensionsRegistry.js';
9
+ import { HelpInformation, ITunnelItem, TunnelEditId } from './remoteExplorerService.js';
10
+
11
+ declare const IRemoteExplorerService: ServiceIdentifier<IRemoteExplorerService>;
12
+ interface IRemoteExplorerService {
13
+ readonly _serviceBrand: undefined;
14
+ onDidChangeTargetType: Event<string[]>;
15
+ targetType: string[];
16
+ onDidChangeHelpInformation: Event<readonly IExtensionPointUser<HelpInformation>[]>;
17
+ helpInformation: IExtensionPointUser<HelpInformation>[];
18
+ readonly tunnelModel: TunnelModel;
19
+ onDidChangeEditable: Event<{
20
+ tunnel: ITunnelItem;
21
+ editId: TunnelEditId;
22
+ } | undefined>;
23
+ setEditable(tunnelItem: ITunnelItem | undefined, editId: TunnelEditId, data: IEditableData | null): void;
24
+ getEditableData(tunnelItem: ITunnelItem | undefined, editId?: TunnelEditId): IEditableData | undefined;
25
+ forward(tunnelProperties: TunnelProperties, attributes?: Attributes | null): Promise<RemoteTunnel | string | undefined>;
26
+ close(remote: {
27
+ host: string;
28
+ port: number;
29
+ }, reason: TunnelCloseReason): Promise<void>;
30
+ setTunnelInformation(tunnelInformation: TunnelInformation | undefined): void;
31
+ setCandidateFilter(filter: ((candidates: CandidatePort[]) => Promise<CandidatePort[]>) | undefined): IDisposable;
32
+ onFoundNewCandidates(candidates: CandidatePort[]): void;
33
+ restore(): Promise<void>;
34
+ enablePortsFeatures(): void;
35
+ onEnabledPortsFeatures: Event<void>;
36
+ portsFeaturesEnabled: boolean;
37
+ readonly namedProcesses: Map<number, string>;
38
+ }
39
+
40
+ export { IRemoteExplorerService };
@@ -0,0 +1,185 @@
1
+ import { Event } from '../../../../base/common/event.js';
2
+ import { Disposable } from '../../../../base/common/lifecycle.js';
3
+ import { URI } from '../../../../base/common/uri.js';
4
+ import { ConfigurationTarget } from '../../../../platform/configuration/common/configuration.js';
5
+ import { IConfigurationService } from '../../../../platform/configuration/common/configuration.service.js';
6
+ import { IDialogService } from '../../../../platform/dialogs/common/dialogs.service.js';
7
+ import { ILogService } from '../../../../platform/log/common/log.service.js';
8
+ import { TunnelDescription } from '../../../../platform/remote/common/remoteAuthorityResolver.js';
9
+ import { IRemoteAuthorityResolverService } from '../../../../platform/remote/common/remoteAuthorityResolver.service.js';
10
+ import { IStorageService } from '../../../../platform/storage/common/storage.service.js';
11
+ import { TunnelProtocol, RemoteTunnel, PortAttributesProvider, TunnelPrivacyId, ProvidedOnAutoForward } from '../../../../platform/tunnel/common/tunnel.js';
12
+ import { ITunnelService } from '../../../../platform/tunnel/common/tunnel.service.js';
13
+ import { IWorkspaceContextService } from '../../../../platform/workspace/common/workspace.service.js';
14
+ import { IWorkbenchEnvironmentService } from '../../environment/common/environmentService.service.js';
15
+ import { IExtensionService } from '../../extensions/common/extensions.service.js';
16
+ import { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.service.js';
17
+
18
+ interface Tunnel {
19
+ remoteHost: string;
20
+ remotePort: number;
21
+ localAddress: string;
22
+ localUri: URI;
23
+ protocol: TunnelProtocol;
24
+ localPort?: number;
25
+ name?: string;
26
+ closeable?: boolean;
27
+ privacy: TunnelPrivacyId | string;
28
+ runningProcess: string | undefined;
29
+ hasRunningProcess?: boolean;
30
+ pid: number | undefined;
31
+ source: {
32
+ source: TunnelSource;
33
+ description: string;
34
+ };
35
+ }
36
+ declare enum TunnelCloseReason {
37
+ Other = "Other",
38
+ User = "User",
39
+ AutoForwardEnd = "AutoForwardEnd"
40
+ }
41
+ declare enum TunnelSource {
42
+ User = 0,
43
+ Auto = 1,
44
+ Extension = 2
45
+ }
46
+ interface TunnelProperties {
47
+ remote: {
48
+ host: string;
49
+ port: number;
50
+ };
51
+ local?: number;
52
+ name?: string;
53
+ source?: {
54
+ source: TunnelSource;
55
+ description: string;
56
+ };
57
+ elevateIfNeeded?: boolean;
58
+ privacy?: string;
59
+ }
60
+ interface CandidatePort {
61
+ host: string;
62
+ port: number;
63
+ detail?: string;
64
+ pid?: number;
65
+ }
66
+ declare enum OnPortForward {
67
+ Notify = "notify",
68
+ OpenBrowser = "openBrowser",
69
+ OpenBrowserOnce = "openBrowserOnce",
70
+ OpenPreview = "openPreview",
71
+ Silent = "silent",
72
+ Ignore = "ignore"
73
+ }
74
+ interface Attributes {
75
+ label: string | undefined;
76
+ onAutoForward: OnPortForward | undefined;
77
+ elevateIfNeeded: boolean | undefined;
78
+ requireLocalPort: boolean | undefined;
79
+ protocol: TunnelProtocol | undefined;
80
+ }
81
+ declare class PortsAttributes extends Disposable {
82
+ private readonly configurationService;
83
+ private static SETTING;
84
+ private static DEFAULTS;
85
+ private static RANGE;
86
+ private static HOST_AND_PORT;
87
+ private portsAttributes;
88
+ private defaultPortAttributes;
89
+ private _onDidChangeAttributes;
90
+ readonly onDidChangeAttributes: Event<void>;
91
+ constructor(configurationService: IConfigurationService);
92
+ private updateAttributes;
93
+ getAttributes(port: number, host: string, commandLine?: string): Attributes | undefined;
94
+ private hasStartEnd;
95
+ private hasHostAndPort;
96
+ private findNextIndex;
97
+ private readSetting;
98
+ private sortAttributes;
99
+ private getOtherAttributes;
100
+ static providedActionToAction(providedAction: ProvidedOnAutoForward | undefined): OnPortForward | undefined;
101
+ addAttributes(port: number, attributes: Partial<Attributes>, target: ConfigurationTarget): Promise<void>;
102
+ }
103
+ declare class TunnelModel extends Disposable {
104
+ private readonly tunnelService;
105
+ private readonly storageService;
106
+ private readonly configurationService;
107
+ private readonly environmentService;
108
+ private readonly remoteAuthorityResolverService;
109
+ private readonly workspaceContextService;
110
+ private readonly logService;
111
+ private readonly dialogService;
112
+ private readonly extensionService;
113
+ private readonly contextKeyService;
114
+ readonly forwarded: Map<string, Tunnel>;
115
+ private readonly inProgress;
116
+ readonly detected: Map<string, Tunnel>;
117
+ private remoteTunnels;
118
+ private _onForwardPort;
119
+ onForwardPort: Event<Tunnel | void>;
120
+ private _onClosePort;
121
+ onClosePort: Event<{
122
+ host: string;
123
+ port: number;
124
+ }>;
125
+ private _onPortName;
126
+ onPortName: Event<{
127
+ host: string;
128
+ port: number;
129
+ }>;
130
+ private _candidates;
131
+ private _onCandidatesChanged;
132
+ onCandidatesChanged: Event<Map<string, {
133
+ host: string;
134
+ port: number;
135
+ }>>;
136
+ private _candidateFilter;
137
+ private tunnelRestoreValue;
138
+ private _onEnvironmentTunnelsSet;
139
+ onEnvironmentTunnelsSet: Event<void>;
140
+ private _environmentTunnelsSet;
141
+ readonly configPortsAttributes: PortsAttributes;
142
+ private restoreListener;
143
+ private knownPortsRestoreValue;
144
+ private restoreComplete;
145
+ private onRestoreComplete;
146
+ private unrestoredExtensionTunnels;
147
+ private sessionCachedProperties;
148
+ private portAttributesProviders;
149
+ constructor(tunnelService: ITunnelService, storageService: IStorageService, configurationService: IConfigurationService, environmentService: IWorkbenchEnvironmentService, remoteAuthorityResolverService: IRemoteAuthorityResolverService, workspaceContextService: IWorkspaceContextService, logService: ILogService, dialogService: IDialogService, extensionService: IExtensionService, contextKeyService: IContextKeyService);
150
+ private extensionHasActivationEvent;
151
+ private checkExtensionActivationEvents;
152
+ private onTunnelClosed;
153
+ private makeLocalUri;
154
+ private addStorageKeyPostfix;
155
+ private getTunnelRestoreStorageKey;
156
+ private getRestoreExpirationStorageKey;
157
+ private getTunnelRestoreValue;
158
+ restoreForwarded(): Promise<void>;
159
+ private cleanupExpiredTunnelsForRestore;
160
+ private storeForwarded;
161
+ private mismatchCooldown;
162
+ private showPortMismatchModalIfNeeded;
163
+ forward(tunnelProperties: TunnelProperties, attributes?: Attributes | null): Promise<RemoteTunnel | string | undefined>;
164
+ private doForward;
165
+ private mergeCachedAndUnrestoredProperties;
166
+ private mergeAttributesIntoExistingTunnel;
167
+ name(host: string, port: number, name: string): Promise<void>;
168
+ close(host: string, port: number, reason: TunnelCloseReason): Promise<void>;
169
+ address(host: string, port: number): string | undefined;
170
+ get environmentTunnelsSet(): boolean;
171
+ addEnvironmentTunnels(tunnels: TunnelDescription[] | undefined): void;
172
+ setCandidateFilter(filter: ((candidates: CandidatePort[]) => Promise<CandidatePort[]>) | undefined): void;
173
+ setCandidates(candidates: CandidatePort[]): Promise<void>;
174
+ private updateInResponseToCandidates;
175
+ get candidates(): CandidatePort[];
176
+ get candidatesOrUndefined(): CandidatePort[] | undefined;
177
+ private updateAttributes;
178
+ getAttributes(forwardedPorts: {
179
+ host: string;
180
+ port: number;
181
+ }[], checkProviders?: boolean): Promise<Map<number, Attributes> | undefined>;
182
+ addAttributesProvider(provider: PortAttributesProvider): void;
183
+ }
184
+
185
+ export { type Attributes, type CandidatePort, OnPortForward, PortsAttributes, type Tunnel, TunnelCloseReason, TunnelModel, type TunnelProperties, TunnelSource };
@@ -0,0 +1,41 @@
1
+ import { IStorage } from '../../../../base/parts/storage/common/storage.js';
2
+ import { ILogService } from '../../../../platform/log/common/log.service.js';
3
+ import { AbstractStorageService, StorageScope } from '../../../../platform/storage/common/storage.js';
4
+ import { IUserDataProfile } from '../../../../platform/userDataProfile/common/userDataProfile.js';
5
+ import { IAnyWorkspaceIdentifier } from '../../../../platform/workspace/common/workspace.js';
6
+ import { IUserDataProfileService } from '../../userDataProfile/common/userDataProfile.service.js';
7
+
8
+ declare class BrowserStorageService extends AbstractStorageService {
9
+ private workspace;
10
+ private readonly userDataProfileService;
11
+ private readonly logService;
12
+ private static BROWSER_DEFAULT_FLUSH_INTERVAL;
13
+ private applicationStorage;
14
+ private applicationStorageDatabase;
15
+ private readonly applicationStoragePromise;
16
+ private profileStorage;
17
+ private profileStorageDatabase;
18
+ private profileStorageProfile;
19
+ private readonly profileStorageDisposables;
20
+ private workspaceStorage;
21
+ private workspaceStorageDatabase;
22
+ private readonly workspaceStorageDisposables;
23
+ get hasPendingUpdate(): boolean;
24
+ constructor(workspace: IAnyWorkspaceIdentifier, userDataProfileService: IUserDataProfileService, logService: ILogService);
25
+ private registerListeners;
26
+ protected doInitialize(): Promise<void>;
27
+ private createApplicationStorage;
28
+ private createProfileStorage;
29
+ private createWorkspaceStorage;
30
+ private updateIsNew;
31
+ protected getStorage(scope: StorageScope): IStorage | undefined;
32
+ protected getLogDetails(scope: StorageScope): string | undefined;
33
+ protected switchToProfile(toProfile: IUserDataProfile): Promise<void>;
34
+ protected switchToWorkspace(toWorkspace: IAnyWorkspaceIdentifier, preserveData: boolean): Promise<void>;
35
+ protected shouldFlushWhenIdle(): boolean;
36
+ close(): void;
37
+ clear(): Promise<void>;
38
+ hasScope(scope: IAnyWorkspaceIdentifier | IUserDataProfile): boolean;
39
+ }
40
+
41
+ export { BrowserStorageService };
@@ -0,0 +1,11 @@
1
+ import { ServiceIdentifier } from '../../../../platform/instantiation/common/instantiation.js';
2
+ import { IGrammar } from 'vscode-textmate';
3
+
4
+ declare const ITextMateTokenizationService: ServiceIdentifier<ITextMateTokenizationService>;
5
+ interface ITextMateTokenizationService {
6
+ readonly _serviceBrand: undefined;
7
+ createTokenizer(languageId: string): Promise<IGrammar | null>;
8
+ startDebugMode(printFn: (str: string) => void, onStop: () => void): void;
9
+ }
10
+
11
+ export { ITextMateTokenizationService };
@@ -0,0 +1,11 @@
1
+ import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js';
2
+
3
+ interface IUserDataInitializer {
4
+ requiresInitialization(): Promise<boolean>;
5
+ whenInitializationFinished(): Promise<void>;
6
+ initializeRequiredResources(): Promise<void>;
7
+ initializeInstalledExtensions(instantiationService: IInstantiationService): Promise<void>;
8
+ initializeOtherResources(instantiationService: IInstantiationService): Promise<void>;
9
+ }
10
+
11
+ export type { IUserDataInitializer };
@@ -0,0 +1,9 @@
1
+ import { ServiceIdentifier } from '../../../../platform/instantiation/common/instantiation.js';
2
+ import { IUserDataInitializer } from './userDataInit.js';
3
+
4
+ declare const IUserDataInitializationService: ServiceIdentifier<IUserDataInitializationService>;
5
+ interface IUserDataInitializationService extends IUserDataInitializer {
6
+ _serviceBrand: any;
7
+ }
8
+
9
+ export { IUserDataInitializationService };