import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri"; import { IResourceEditorInput } from "@codingame/monaco-vscode-api/vscode/vs/platform/editor/common/editor"; import { IEditorPane, GroupIdentifier, IEditorPaneSelection, IEditorPaneSelectionChangeEvent } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor"; import { EditorInput } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor/editorInput"; import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service"; import { GoFilter, GoScope } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/history/common/history"; import { IHistoryService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/history/common/history.service"; import { FileChangesEvent, FileOperationEvent } from "@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files"; import { IFileService } from "@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service"; import { IWorkspaceContextService } from "@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service"; import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle"; import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service"; import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event"; import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service"; import { IEditorGroupsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service"; import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation"; import { EditorServiceImpl } from "@codingame/monaco-vscode-api/vscode/vs/workbench/browser/parts/editor/editor"; import { IWorkbenchLayoutService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/layout/browser/layoutService.service"; import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service"; import { IWorkspacesService } from "@codingame/monaco-vscode-api/vscode/vs/platform/workspaces/common/workspaces.service"; import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service"; export declare class HistoryService extends Disposable implements IHistoryService { private readonly editorService; private readonly editorGroupService; private readonly contextService; private readonly storageService; private readonly configurationService; private readonly fileService; private readonly workspacesService; private readonly instantiationService; private readonly layoutService; private readonly contextKeyService; private readonly logService; readonly _serviceBrand: undefined; private static readonly MOUSE_NAVIGATION_SETTING; private static readonly NAVIGATION_SCOPE_SETTING; private readonly activeEditorListeners; private lastActiveEditor; private readonly editorHelper; constructor(editorService: EditorServiceImpl, editorGroupService: IEditorGroupsService, contextService: IWorkspaceContextService, storageService: IStorageService, configurationService: IConfigurationService, fileService: IFileService, workspacesService: IWorkspacesService, instantiationService: IInstantiationService, layoutService: IWorkbenchLayoutService, contextKeyService: IContextKeyService, logService: ILogService); private registerListeners; private onDidCloseEditor; private registerMouseNavigationListener; private onMouseDownOrUp; private onDidRemoveGroup; private onDidActiveEditorChange; private onDidFilesChange; private handleActiveEditorChange; private handleActiveEditorSelectionChangeEvent; private move; private remove; private removeFromRecentlyOpened; clear(): void; private readonly canNavigateBackContextKey; private readonly canNavigateForwardContextKey; private readonly canNavigateBackInNavigationsContextKey; private readonly canNavigateForwardInNavigationsContextKey; private readonly canNavigateToLastNavigationLocationContextKey; private readonly canNavigateBackInEditsContextKey; private readonly canNavigateForwardInEditsContextKey; private readonly canNavigateToLastEditLocationContextKey; private readonly canReopenClosedEditorContextKey; updateContextKeys(): void; private readonly _onDidChangeEditorNavigationStack; readonly onDidChangeEditorNavigationStack: Event; private defaultScopedEditorNavigationStack; private readonly editorGroupScopedNavigationStacks; private readonly editorScopedNavigationStacks; private editorNavigationScope; private registerEditorNavigationScopeChangeListener; private getStack; goForward(filter?: GoFilter): Promise; goBack(filter?: GoFilter): Promise; goPrevious(filter?: GoFilter): Promise; goLast(filter?: GoFilter): Promise; private handleActiveEditorChangeInNavigationStacks; private handleActiveEditorSelectionChangeInNavigationStacks; private handleEditorCloseEventInHistory; private handleEditorGroupRemoveInNavigationStacks; private clearEditorNavigationStacks; private removeFromEditorNavigationStacks; private moveInEditorNavigationStacks; private withEachEditorNavigationStack; private disposeEditorNavigationStacks; private recentlyUsedEditorsStack; private recentlyUsedEditorsStackIndex; private recentlyUsedEditorsInGroupStack; private recentlyUsedEditorsInGroupStackIndex; private navigatingInRecentlyUsedEditorsStack; private navigatingInRecentlyUsedEditorsInGroupStack; openNextRecentlyUsedEditor(groupId?: GroupIdentifier): Promise; openPreviouslyUsedEditor(groupId?: GroupIdentifier): Promise; private doNavigateInRecentlyUsedEditorsStack; private ensureRecentlyUsedStack; private handleEditorEventInRecentEditorsStack; private static readonly MAX_RECENTLY_CLOSED_EDITORS; private recentlyClosedEditors; private ignoreEditorCloseEvent; private recentlyClosedEditorsBatchId; private recentlyClosedEditorsBatchScheduled; private handleEditorCloseEventInReopen; private currentRecentlyClosedEditorsBatchId; reopenLastClosedEditor(): Promise; private takeLastClosedEditorsBatch; private doReopenLastClosedEditors; private doReopenLastClosedEditor; private removeFromRecentlyClosedEditors; private static readonly MAX_HISTORY_ITEMS; private static readonly HISTORY_STORAGE_KEY; private history; private readonly editorHistoryListeners; private readonly resourceExcludeMatcher; private handleActiveEditorChangeInHistory; private addToHistory; private updateHistoryOnEditorDispose; private includeInHistory; private removeExcludedFromHistory; private moveInHistory; removeFromHistory(arg1: EditorInput | IResourceEditorInput | FileChangesEvent | FileOperationEvent): boolean; private replaceInHistory; clearRecentlyOpened(): void; getHistory(): readonly (EditorInput | IResourceEditorInput)[]; private ensureHistoryLoaded; private loadHistory; private loadHistoryFromStorage; private saveState; getLastActiveWorkspaceRoot(schemeFilter?: string, authorityFilter?: string): URI | undefined; getLastActiveFile(filterByScheme: string, filterByAuthority?: string): URI | undefined; dispose(): void; } interface IEditorNavigationStackEntry { groupId: GroupIdentifier; editor: EditorInput | IResourceEditorInput; selection?: IEditorPaneSelection; } export declare class EditorNavigationStack extends Disposable { private readonly filter; private readonly scope; private readonly editorService; private readonly editorGroupService; private readonly logService; private static readonly MAX_STACK_SIZE; private readonly _onDidChange; readonly onDidChange: Event; private readonly mapEditorToDisposable; private readonly mapGroupToDisposable; private readonly editorHelper; private stack; private index; private previousIndex; private navigating; private currentSelectionState; get current(): IEditorNavigationStackEntry | undefined; private set current(value); constructor(filter: GoFilter, scope: GoScope, instantiationService: IInstantiationService, editorService: IEditorService, editorGroupService: IEditorGroupsService, logService: ILogService); private registerListeners; private traceStack; private trace; private traceEvent; private registerGroupListeners; private onWillMoveEditor; notifyNavigation(editorPane: IEditorPane | undefined, event?: IEditorPaneSelectionChangeEvent): void; private onSelectionAwareEditorNavigation; private onNonSelectionAwareEditorNavigation; private doAdd; private doReplace; addOrReplace(groupId: GroupIdentifier, editorCandidate: EditorInput | IResourceEditorInput, selection?: IEditorPaneSelection, forceReplace?: boolean): void; private shouldReplaceStackEntry; move(event: FileOperationEvent): void; remove(arg1: EditorInput | FileChangesEvent | FileOperationEvent | GroupIdentifier): void; private flatten; clear(): void; dispose(): void; canGoForward(): boolean; goForward(): Promise; canGoBack(): boolean; goBack(): Promise; goPrevious(): Promise; canGoLast(): boolean; goLast(): Promise; private maybeGoCurrent; private isCurrentSelectionActive; private setIndex; private navigate; private doNavigate; isNavigating(): boolean; } export {};