import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event"; import { Disposable, IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle"; import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri"; import { ILayoutService } from "@codingame/monaco-vscode-api/vscode/vs/platform/layout/browser/layoutService.service"; import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service"; import { type PreferredGroup } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService"; import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service"; import { IEditorGroupsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service"; import { IViewsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/views/common/viewsService.service"; import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService.service"; import { ChatAgentLocation } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants"; import { ChatViewPaneTarget, IChatWidget } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat"; import { IQuickChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service"; import { IChatWidgetService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service"; import { IChatEditorOptions } from "../widgetHosts/editor/chatEditor.js"; export declare class ChatWidgetService extends Disposable implements IChatWidgetService { private readonly editorGroupsService; private readonly viewsService; private readonly quickChatService; private readonly layoutService; private readonly editorService; private readonly chatService; private readonly logService; readonly _serviceBrand: undefined; private _widgets; private _lastFocusedWidget; private readonly _onDidAddWidget; readonly onDidAddWidget: Event; private readonly _onDidBackgroundSession; readonly onDidBackgroundSession: Event; private readonly _onDidChangeFocusedWidget; readonly onDidChangeFocusedWidget: Event; private readonly _onDidChangeFocusedSession; readonly onDidChangeFocusedSession: Event; constructor(editorGroupsService: IEditorGroupsService, viewsService: IViewsService, quickChatService: IQuickChatService, layoutService: ILayoutService, editorService: IEditorService, chatService: IChatService, logService: ILogService); get lastFocusedWidget(): IChatWidget | undefined; getAllWidgets(): ReadonlyArray; getWidgetsByLocations(location: ChatAgentLocation): ReadonlyArray; getWidgetByInputUri(uri: URI): IChatWidget | undefined; getWidgetBySessionResource(sessionResource: URI): IChatWidget | undefined; revealWidget(preserveFocus?: boolean): Promise; reveal(widget: IChatWidget, preserveFocus?: boolean): Promise; /** * Reveal the session if already open, otherwise open it. */ openSession(sessionResource: URI, target?: typeof ChatViewPaneTarget): Promise; openSession(sessionResource: URI, target?: PreferredGroup, options?: IChatEditorOptions): Promise; private revealSessionIfAlreadyOpen; private prepareSessionForMove; private findExistingChatEditorByUri; private isSameEditorTarget; private setLastFocusedWidget; register(newWidget: IChatWidget): IDisposable; }