import { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation"; import { ResourceSet } from "@codingame/monaco-vscode-api/vscode/vs/base/common/map"; import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service"; import { IFileService } from "@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service"; import { ILabelService } from "@codingame/monaco-vscode-api/vscode/vs/platform/label/common/label.service"; import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service"; import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service"; import { IWorkspaceContextService } from "@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service"; import { ChatRequestVariableSet } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatVariableEntries"; import { IToolData } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService"; import { IPromptPath } from "@codingame/monaco-vscode-2339d6ac-d6bb-53cd-95ee-81911735d1c7-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService"; import { IPromptsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service"; export type InstructionsCollectionEvent = { applyingInstructionsCount: number; referencedInstructionsCount: number; agentInstructionsCount: number; listedInstructionsCount: number; totalInstructionsCount: number; }; export declare function newInstructionsCollectionEvent(): InstructionsCollectionEvent; export declare class ComputeAutomaticInstructions { private readonly _readFileTool; private readonly _promptsService; readonly _logService: ILogService; private readonly _labelService; private readonly _configurationService; private readonly _workspaceService; private readonly _fileService; private readonly _telemetryService; private _parseResults; constructor(_readFileTool: IToolData | undefined, _promptsService: IPromptsService, _logService: ILogService, _labelService: ILabelService, _configurationService: IConfigurationService, _workspaceService: IWorkspaceContextService, _fileService: IFileService, _telemetryService: ITelemetryService); private _parseInstructionsFile; collect(variables: ChatRequestVariableSet, token: CancellationToken): Promise; private sendTelemetry; /** public for testing */ addApplyingInstructions(instructionFiles: readonly IPromptPath[], context: { files: ResourceSet; instructions: ResourceSet; }, variables: ChatRequestVariableSet, telemetryEvent: InstructionsCollectionEvent, token: CancellationToken): Promise; private _getContext; private _addAgentInstructions; private _matches; private _getInstructionsWithPatternsList; private _addReferencedInstructions; }