import { ThemeIcon } from "@codingame/monaco-vscode-api/vscode/vs/base/common/themables"; import { LanguageSelector } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/languageSelector"; import { IChatContextPickService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/attachments/chatContextPickService.service"; import { IChatContextItem, IChatExplicitContextProvider, IChatResourceContextProvider, IChatWorkspaceContextProvider } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/contextContrib/chatContext"; import { IChatRequestWorkspaceVariableEntry, StringChatContextValue } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/attachments/chatVariableEntries"; import { IExtensionService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensions.service"; import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle"; import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri"; export declare class ChatContextService extends Disposable { private readonly _contextPickService; private readonly _extensionService; _serviceBrand: undefined; private readonly _providers; private readonly _workspaceContext; private readonly _registeredPickers; private _lastResourceContext; private _executeCommandCallback; constructor(_contextPickService: IChatContextPickService, _extensionService: IExtensionService); setExecuteCommandCallback(callback: (itemHandle: number) => Promise): void; executeChatContextItemCommand(handle: number): Promise; setChatContextProvider(id: string, picker: { title: string; icon: ThemeIcon; }): void; private _registerWithPickService; registerChatWorkspaceContextProvider(id: string, provider: IChatWorkspaceContextProvider): void; registerChatExplicitContextProvider(id: string, provider: IChatExplicitContextProvider): void; registerChatResourceContextProvider(id: string, selector: LanguageSelector, provider: IChatResourceContextProvider): void; unregisterChatContextProvider(id: string): void; updateWorkspaceContextItems(id: string, items: IChatContextItem[]): void; getWorkspaceContextItems(): IChatRequestWorkspaceVariableEntry[]; contextForResource(uri: URI, language?: string): Promise; private _contextForResource; resolveChatContext(context: StringChatContextValue, language?: string): Promise; private _asPicker; }