import { IHoverDelegate } from "@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/hover/hoverDelegate"; import * as 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 { IRange } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range"; import { Location, SymbolKind } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/languages"; import { MenuId } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions"; import { ICommandService } from "@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service"; import { IScopedContextKeyService, RawContextKey } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey"; 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, ServicesAccessor } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation"; import { ILabelService } from "@codingame/monaco-vscode-api/vscode/vs/platform/label/common/label.service"; import { IOpenerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service"; import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service"; import { IThemeService } from "@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/themeService.service"; import { IResourceLabel, ResourceLabels } from "@codingame/monaco-vscode-2726569c-a06b-5f25-b851-14311bef12fa-common/vscode/vs/workbench/browser/labels"; import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service"; import { IPreferencesService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/preferences/common/preferences.service"; import { INotebookService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookService.service"; import { IChatContentReference } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService"; import { IChatRequestPasteVariableEntry, IChatRequestToolEntry, IChatRequestToolSetEntry, IChatRequestVariableEntry, IElementVariableEntry, INotebookOutputVariableEntry, IPromptFileVariableEntry, IPromptTextVariableEntry, ISCMHistoryItemVariableEntry } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatVariableEntries"; import { ILanguageModelChatMetadataAndIdentifier } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels"; import { ILanguageModelsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModels.service"; import { ILanguageModelToolsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService.service"; declare abstract class AbstractChatAttachmentWidget extends Disposable { private readonly attachment; private readonly options; protected readonly hoverDelegate: IHoverDelegate; protected readonly currentLanguageModel: ILanguageModelChatMetadataAndIdentifier | undefined; protected readonly commandService: ICommandService; protected readonly openerService: IOpenerService; readonly element: HTMLElement; readonly label: IResourceLabel; private readonly _onDidDelete; get onDidDelete(): event.Event; private readonly _onDidOpen; get onDidOpen(): event.Event; constructor(attachment: IChatRequestVariableEntry, options: { shouldFocusClearButton: boolean; supportsDeletion: boolean; }, container: HTMLElement, contextResourceLabels: ResourceLabels, hoverDelegate: IHoverDelegate, currentLanguageModel: ILanguageModelChatMetadataAndIdentifier | undefined, commandService: ICommandService, openerService: IOpenerService); protected modelSupportsVision(): boolean; protected attachClearButton(): void; protected addResourceOpenHandlers(resource: URI, range: IRange | undefined): void; protected openResource(resource: URI, isDirectory: true): Promise; protected openResource(resource: URI, isDirectory: false, range: IRange | undefined): Promise; } export declare class FileAttachmentWidget extends AbstractChatAttachmentWidget { private readonly themeService; private readonly hoverService; private readonly languageModelsService; private readonly instantiationService; constructor(resource: URI, range: IRange | undefined, attachment: IChatRequestVariableEntry, correspondingContentReference: IChatContentReference | undefined, currentLanguageModel: ILanguageModelChatMetadataAndIdentifier | undefined, options: { shouldFocusClearButton: boolean; supportsDeletion: boolean; }, container: HTMLElement, contextResourceLabels: ResourceLabels, hoverDelegate: IHoverDelegate, commandService: ICommandService, openerService: IOpenerService, themeService: IThemeService, hoverService: IHoverService, languageModelsService: ILanguageModelsService, instantiationService: IInstantiationService); private renderOmittedWarning; } export declare class ImageAttachmentWidget extends AbstractChatAttachmentWidget { private readonly hoverService; private readonly languageModelsService; private readonly telemetryService; private readonly labelService; constructor(resource: URI | undefined, attachment: IChatRequestVariableEntry, currentLanguageModel: ILanguageModelChatMetadataAndIdentifier | undefined, options: { shouldFocusClearButton: boolean; supportsDeletion: boolean; }, container: HTMLElement, contextResourceLabels: ResourceLabels, hoverDelegate: IHoverDelegate, commandService: ICommandService, openerService: IOpenerService, hoverService: IHoverService, languageModelsService: ILanguageModelsService, telemetryService: ITelemetryService, instantiationService: IInstantiationService, labelService: ILabelService); } export declare class PasteAttachmentWidget extends AbstractChatAttachmentWidget { private readonly hoverService; private readonly instantiationService; constructor(attachment: IChatRequestPasteVariableEntry, currentLanguageModel: ILanguageModelChatMetadataAndIdentifier | undefined, options: { shouldFocusClearButton: boolean; supportsDeletion: boolean; }, container: HTMLElement, contextResourceLabels: ResourceLabels, hoverDelegate: IHoverDelegate, commandService: ICommandService, openerService: IOpenerService, hoverService: IHoverService, instantiationService: IInstantiationService); } export declare class DefaultChatAttachmentWidget extends AbstractChatAttachmentWidget { private readonly contextKeyService; private readonly instantiationService; constructor(resource: URI | undefined, range: IRange | undefined, attachment: IChatRequestVariableEntry, correspondingContentReference: IChatContentReference | undefined, currentLanguageModel: ILanguageModelChatMetadataAndIdentifier | undefined, options: { shouldFocusClearButton: boolean; supportsDeletion: boolean; }, container: HTMLElement, contextResourceLabels: ResourceLabels, hoverDelegate: IHoverDelegate, commandService: ICommandService, openerService: IOpenerService, contextKeyService: IContextKeyService, instantiationService: IInstantiationService); } export declare class PromptFileAttachmentWidget extends AbstractChatAttachmentWidget { private readonly labelService; private readonly instantiationService; private hintElement; constructor(attachment: IPromptFileVariableEntry, currentLanguageModel: ILanguageModelChatMetadataAndIdentifier | undefined, options: { shouldFocusClearButton: boolean; supportsDeletion: boolean; }, container: HTMLElement, contextResourceLabels: ResourceLabels, hoverDelegate: IHoverDelegate, commandService: ICommandService, openerService: IOpenerService, labelService: ILabelService, instantiationService: IInstantiationService); private updateLabel; } export declare class PromptTextAttachmentWidget extends AbstractChatAttachmentWidget { constructor(attachment: IPromptTextVariableEntry, currentLanguageModel: ILanguageModelChatMetadataAndIdentifier | undefined, options: { shouldFocusClearButton: boolean; supportsDeletion: boolean; }, container: HTMLElement, contextResourceLabels: ResourceLabels, hoverDelegate: IHoverDelegate, commandService: ICommandService, openerService: IOpenerService, preferencesService: IPreferencesService, hoverService: IHoverService); } export declare class ToolSetOrToolItemAttachmentWidget extends AbstractChatAttachmentWidget { constructor(attachment: IChatRequestToolSetEntry | IChatRequestToolEntry, currentLanguageModel: ILanguageModelChatMetadataAndIdentifier | undefined, options: { shouldFocusClearButton: boolean; supportsDeletion: boolean; }, container: HTMLElement, contextResourceLabels: ResourceLabels, hoverDelegate: IHoverDelegate, toolsService: ILanguageModelToolsService, commandService: ICommandService, openerService: IOpenerService, hoverService: IHoverService); } export declare class NotebookCellOutputChatAttachmentWidget extends AbstractChatAttachmentWidget { private readonly hoverService; private readonly languageModelsService; private readonly notebookService; private readonly instantiationService; constructor(resource: URI, attachment: INotebookOutputVariableEntry, currentLanguageModel: ILanguageModelChatMetadataAndIdentifier | undefined, options: { shouldFocusClearButton: boolean; supportsDeletion: boolean; }, container: HTMLElement, contextResourceLabels: ResourceLabels, hoverDelegate: IHoverDelegate, commandService: ICommandService, openerService: IOpenerService, hoverService: IHoverService, languageModelsService: ILanguageModelsService, notebookService: INotebookService, instantiationService: IInstantiationService); getAriaLabel(attachment: INotebookOutputVariableEntry): string; private renderErrorOutput; private renderGenericOutput; private renderImageOutput; private getOutputItem; } export declare class ElementChatAttachmentWidget extends AbstractChatAttachmentWidget { constructor(attachment: IElementVariableEntry, currentLanguageModel: ILanguageModelChatMetadataAndIdentifier | undefined, options: { shouldFocusClearButton: boolean; supportsDeletion: boolean; }, container: HTMLElement, contextResourceLabels: ResourceLabels, hoverDelegate: IHoverDelegate, commandService: ICommandService, openerService: IOpenerService, editorService: IEditorService); } export declare class SCMHistoryItemAttachmentWidget extends AbstractChatAttachmentWidget { constructor(attachment: ISCMHistoryItemVariableEntry, currentLanguageModel: ILanguageModelChatMetadataAndIdentifier | undefined, options: { shouldFocusClearButton: boolean; supportsDeletion: boolean; }, container: HTMLElement, contextResourceLabels: ResourceLabels, hoverDelegate: IHoverDelegate, commandService: ICommandService, hoverService: IHoverService, openerService: IOpenerService, themeService: IThemeService); private _openAttachment; } export declare function hookUpResourceAttachmentDragAndContextMenu(accessor: ServicesAccessor, widget: HTMLElement, resource: URI): IDisposable; export declare function hookUpSymbolAttachmentDragAndContextMenu(accessor: ServicesAccessor, widget: HTMLElement, scopedContextKeyService: IScopedContextKeyService, attachment: { name: string; value: Location; kind: SymbolKind; }, contextMenuId: MenuId): IDisposable; export declare const chatAttachmentResourceContextKey: RawContextKey; export {};