import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle"; import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri"; import { ILanguageService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/language.service"; 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 { IMarkdownVulnerability } from "@codingame/monaco-vscode-9911aec2-e4dd-5483-8369-9d695cc70d8a-common/vscode/vs/workbench/contrib/chat/common/annotations"; import { IChatRequestViewModel, IChatResponseViewModel } from "@codingame/monaco-vscode-9911aec2-e4dd-5483-8369-9d695cc70d8a-common/vscode/vs/workbench/contrib/chat/common/chatViewModel"; interface CodeBlockContent { readonly text: string; readonly languageId?: string; readonly isComplete: boolean; } export interface CodeBlockEntry { readonly model: Promise; readonly vulns: readonly IMarkdownVulnerability[]; readonly codemapperUri?: URI; readonly isEdit?: boolean; } export declare class CodeBlockModelCollection extends Disposable { private readonly tag; private readonly languageService; private readonly textModelService; private readonly _models; private readonly maxModelCount; constructor(tag: string | undefined, languageService: ILanguageService, textModelService: ITextModelService); dispose(): void; get(sessionId: string, chat: IChatRequestViewModel | IChatResponseViewModel, codeBlockIndex: number): CodeBlockEntry | undefined; getOrCreate(sessionId: string, chat: IChatRequestViewModel | IChatResponseViewModel, codeBlockIndex: number): CodeBlockEntry; private delete; clear(): void; updateSync(sessionId: string, chat: IChatRequestViewModel | IChatResponseViewModel, codeBlockIndex: number, content: CodeBlockContent): CodeBlockEntry; markCodeBlockCompleted(sessionId: string, chat: IChatRequestViewModel | IChatResponseViewModel, codeBlockIndex: number): void; update(sessionId: string, chat: IChatRequestViewModel | IChatResponseViewModel, codeBlockIndex: number, content: CodeBlockContent): Promise; private setCodemapperUri; private setVulns; private getKey; private getCodeBlockUri; private getUriMetaData; } export {};