import { Dimension } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/dom"; import { Emitter, Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event"; import { DisposableStore } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle"; import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable"; import { ICodeEditor } from "@codingame/monaco-vscode-api/vscode/vs/editor/browser/editorBrowser"; import { ICodeEditorViewState } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/editorCommon"; import { ITextModel } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model"; 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 { IWorkbenchButtonBarOptions } from "../../../../platform/actions/browser/buttonbar.js"; import { MenuId } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions"; import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service"; import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service"; import { IHoverService } from "@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service"; import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation"; import { IKeybindingService } from "@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybinding.service"; import { ILayoutService } from "@codingame/monaco-vscode-api/vscode/vs/platform/layout/browser/layoutService.service"; import { IChatWidgetViewOptions } from "@codingame/monaco-vscode-9911aec2-e4dd-5483-8369-9d695cc70d8a-common/vscode/vs/workbench/contrib/chat/browser/chat"; import { ChatWidget, IChatViewState, IChatWidgetLocationOptions } from "../../chat/browser/chatWidget.js"; import { IChatModel } from "@codingame/monaco-vscode-9911aec2-e4dd-5483-8369-9d695cc70d8a-common/vscode/vs/workbench/contrib/chat/common/chatModel"; import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service"; import { HunkInformation, Session } from "@codingame/monaco-vscode-3927dd53-f845-534c-9baa-1528ff3956c8-common/vscode/vs/workbench/contrib/inlineChat/browser/inlineChatSession"; export interface InlineChatWidgetViewState { editorViewState: ICodeEditorViewState; input: string; placeholder: string; } export interface IInlineChatWidgetConstructionOptions { statusMenuId: MenuId | { menu: MenuId; options: IWorkbenchButtonBarOptions; }; secondaryMenuId?: MenuId; chatWidgetViewOptions?: IChatWidgetViewOptions; inZoneWidget?: boolean; } export declare class InlineChatWidget { private readonly _options; protected readonly _instantiationService: IInstantiationService; private readonly _contextKeyService; private readonly _keybindingService; private readonly _accessibilityService; private readonly _configurationService; private readonly _accessibleViewService; protected readonly _textModelResolverService: ITextModelService; private readonly _chatService; private readonly _hoverService; protected readonly _elements: { root: HTMLDivElement; chatWidget: HTMLDivElement; accessibleViewer: HTMLDivElement; infoLabel: HTMLDivElement; toolbar1: HTMLDivElement; statusLabel: HTMLDivElement; toolbar2: HTMLDivElement; status: HTMLDivElement; }; protected readonly _store: DisposableStore; private readonly _ctxInputEditorFocused; private readonly _ctxResponseFocused; private readonly _chatWidget; protected readonly _onDidChangeHeight: Emitter; readonly onDidChangeHeight: Event; private readonly _requestInProgress; readonly requestInProgress: IObservable; private _isLayouting; readonly scopedContextKeyService: IContextKeyService; constructor(location: IChatWidgetLocationOptions, _options: IInlineChatWidgetConstructionOptions, _instantiationService: IInstantiationService, _contextKeyService: IContextKeyService, _keybindingService: IKeybindingService, _accessibilityService: IAccessibilityService, _configurationService: IConfigurationService, _accessibleViewService: IAccessibleViewService, _textModelResolverService: ITextModelService, _chatService: IChatService, _hoverService: IHoverService); private _updateAriaLabel; dispose(): void; get domNode(): HTMLElement; get chatWidget(): ChatWidget; saveState(): void; layout(widgetDim: Dimension): void; protected _doLayout(dimension: Dimension): void; get contentHeight(): number; get minHeight(): number; protected _getExtraHeight(): number; get value(): string; set value(value: string); selectAll(): void; set placeholder(value: string); toggleStatus(show: boolean): void; updateToolbar(show: boolean): void; getCodeBlockInfo(codeBlockIndex: number): Promise; get responseContent(): string | undefined; getChatModel(): IChatModel | undefined; setChatModel(chatModel: IChatModel, state?: IChatViewState): void; updateInfo(message: string): void; updateStatus(message: string, ops?: { classes?: string[]; resetAfter?: number; keepMessage?: boolean; title?: string; }): void; reset(): void; focus(): void; hasFocus(): boolean; } export declare class EditorBasedInlineChatWidget extends InlineChatWidget { private readonly _parentEditor; private readonly _accessibleViewer; constructor(location: IChatWidgetLocationOptions, _parentEditor: ICodeEditor, options: IInlineChatWidgetConstructionOptions, contextKeyService: IContextKeyService, keybindingService: IKeybindingService, instantiationService: IInstantiationService, accessibilityService: IAccessibilityService, configurationService: IConfigurationService, accessibleViewService: IAccessibleViewService, textModelResolverService: ITextModelService, chatService: IChatService, hoverService: IHoverService, layoutService: ILayoutService); get contentHeight(): number; protected _doLayout(dimension: Dimension): void; reset(): void; showAccessibleHunk(session: Session, hunkData: HunkInformation): void; }