import type { Terminal as RawXtermTerminal } from "@xterm/xterm"; import { IFocusTracker } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/dom"; import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event"; import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle"; import { type IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable"; import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service"; import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation"; import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service"; import { IChatAcceptInputOptions } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat"; import { IChatWidgetService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service"; import { IChatAgentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/participants/chatAgents.service"; import { IChatModel, IChatResponseModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/model/chatModel"; import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService.service"; import { IInlineChatWidgetConstructionOptions, InlineChatWidget } from "@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/inlineChat/browser/inlineChatWidget"; import { ITerminalInstance, type IXtermTerminal } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminal/browser/terminal"; import { ITextModel } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model"; import { IModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service"; import { ITextModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService.service"; import { IAccessibleViewService } from "@codingame/monaco-vscode-api/vscode/vs/platform/accessibility/browser/accessibleView.service"; import { IAccessibilityService } from "@codingame/monaco-vscode-api/vscode/vs/platform/accessibility/common/accessibility.service"; import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service"; import { IHoverService } from "@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service"; import { IKeybindingService } from "@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybinding.service"; import { IMarkdownRendererService } from "@codingame/monaco-vscode-api/vscode/vs/platform/markdown/browser/markdownRenderer.service"; import { IChatEntitlementService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service"; import { IChatWidgetLocationOptions } from "@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/browser/widget/chatWidget"; export declare class TerminalChatWidget extends Disposable { private readonly _terminalElement; private readonly _instance; private readonly _xterm; private readonly _chatService; private readonly _storageService; private readonly _chatAgentService; private readonly _chatWidgetService; private readonly _container; private readonly _onDidHide; readonly onDidHide: Event; private readonly _inlineChatWidget; get inlineChatWidget(): TerminalInlineChatWidget; private readonly _focusTracker; private readonly _focusedContextKey; private readonly _visibleContextKey; private readonly _requestActiveContextKey; private readonly _responseContainsCodeBlockContextKey; private readonly _responseContainsMulitpleCodeBlocksContextKey; private _messages; private _viewStateStorageKey; private _lastResponseContent; get lastResponseContent(): string | undefined; private _terminalAgentName; private readonly _model; private readonly _sessionDisposables; private _sessionCtor; private _currentRequestId; private _activeRequestCts?; private readonly _requestInProgress; readonly requestInProgress: IObservable; constructor(_terminalElement: HTMLElement, _instance: ITerminalInstance, _xterm: IXtermTerminal & { raw: RawXtermTerminal; }, contextKeyService: IContextKeyService, _chatService: IChatService, _storageService: IStorageService, instantiationService: IInstantiationService, _chatAgentService: IChatAgentService, _chatWidgetService: IChatWidgetService); private _dimension?; private _relayout; private _doLayout; private _resetPlaceholder; reveal(): Promise; private _getTerminalCursorTop; private _updateXtermViewportPosition; private _getTerminalViewportHeight; hide(): void; private _setTerminalViewportOffset; focus(): void; hasFocus(): boolean; setValue(value?: string): void; acceptCommand(shouldExecute: boolean): Promise; get focusTracker(): IFocusTracker; private _createSession; private _saveViewState; clear(): void; acceptInput(query?: string, options?: IChatAcceptInputOptions): Promise; cancel(): void; viewInChat(): Promise; } declare class TerminalInlineChatWidget extends InlineChatWidget { private _modelService; constructor(location: IChatWidgetLocationOptions, options: IInlineChatWidgetConstructionOptions, instantiationService: IInstantiationService, contextKeyService: IContextKeyService, keybindingService: IKeybindingService, accessibilityService: IAccessibilityService, configurationService: IConfigurationService, accessibleViewService: IAccessibleViewService, textModelResolverService: ITextModelService, chatService: IChatService, hoverService: IHoverService, chatEntitlementService: IChatEntitlementService, markdownRendererService: IMarkdownRendererService, _modelService: IModelService); get value(): string; set value(value: string); selectAll(): void; set placeholder(value: string); toggleStatus(show: boolean): void; updateToolbar(show: boolean): void; get responseContent(): string | undefined; getChatModel(): IChatModel | undefined; setChatModel(chatModel: IChatModel): void; getCodeBlockInfo(codeBlockIndex: number): Promise; } export {};