Skip to content

Commit c4a22ad

Browse files
Copilotalexr00
andcommitted
Add DeleteReviewResult type and validate review exists before clearing state
Co-authored-by: alexr00 <38270282+alexr00@users.noreply.github.com>
1 parent fa8e917 commit c4a22ad

5 files changed

Lines changed: 50 additions & 245 deletions

File tree

src/@types/vscode.proposed.chatParticipantAdditions.d.ts

Lines changed: 6 additions & 195 deletions
Original file line numberDiff line numberDiff line change
@@ -66,10 +66,10 @@ declare module 'vscode' {
6666

6767
export class ChatResponseConfirmationPart {
6868
title: string;
69-
message: string | MarkdownString;
69+
message: string;
7070
data: any;
7171
buttons?: string[];
72-
constructor(title: string, message: string | MarkdownString, data: any, buttons?: string[]);
72+
constructor(title: string, message: string, data: any, buttons?: string[]);
7373
}
7474

7575
export class ChatResponseCodeCitationPart {
@@ -84,83 +84,8 @@ declare module 'vscode' {
8484
constructor(toolName: string);
8585
}
8686

87-
export interface ChatTerminalToolInvocationData {
88-
commandLine: {
89-
original: string;
90-
userEdited?: string;
91-
toolEdited?: string;
92-
};
93-
language: string;
94-
}
95-
96-
export class ChatToolInvocationPart {
97-
toolName: string;
98-
toolCallId: string;
99-
isError?: boolean;
100-
invocationMessage?: string | MarkdownString;
101-
originMessage?: string | MarkdownString;
102-
pastTenseMessage?: string | MarkdownString;
103-
isConfirmed?: boolean;
104-
isComplete?: boolean;
105-
toolSpecificData?: ChatTerminalToolInvocationData;
106-
fromSubAgent?: boolean;
107-
108-
constructor(toolName: string, toolCallId: string, isError?: boolean);
109-
}
110-
111-
/**
112-
* Represents a single file diff entry in a multi diff view.
113-
*/
114-
export interface ChatResponseDiffEntry {
115-
/**
116-
* The original file URI (undefined for new files).
117-
*/
118-
originalUri?: Uri;
119-
120-
/**
121-
* The modified file URI (undefined for deleted files).
122-
*/
123-
modifiedUri?: Uri;
124-
125-
/**
126-
* Optional URI to navigate to when clicking on the file.
127-
*/
128-
goToFileUri?: Uri;
129-
130-
/**
131-
* Added data (e.g. line numbers) to show in the UI
132-
*/
133-
added?: number;
134-
135-
/**
136-
* Removed data (e.g. line numbers) to show in the UI
137-
*/
138-
removed?: number;
139-
}
140-
141-
/**
142-
* Represents a part of a chat response that shows multiple file diffs.
143-
*/
144-
export class ChatResponseMultiDiffPart {
145-
/**
146-
* Array of file diff entries to display.
147-
*/
148-
value: ChatResponseDiffEntry[];
149-
150-
/**
151-
* The title for the multi diff editor.
152-
*/
153-
title: string;
87+
export type ExtendedChatResponsePart = ChatResponsePart | ChatResponseTextEditPart | ChatResponseNotebookEditPart | ChatResponseConfirmationPart | ChatResponseCodeCitationPart | ChatResponseReferencePart2 | ChatResponseMovePart | ChatResponseExtensionsPart | ChatPrepareToolInvocationPart;
15488

155-
/**
156-
* Create a new ChatResponseMultiDiffPart.
157-
* @param value Array of file diff entries.
158-
* @param title The title for the multi diff editor.
159-
*/
160-
constructor(value: ChatResponseDiffEntry[], title: string);
161-
}
162-
163-
export type ExtendedChatResponsePart = ChatResponsePart | ChatResponseTextEditPart | ChatResponseNotebookEditPart | ChatResponseConfirmationPart | ChatResponseCodeCitationPart | ChatResponseReferencePart2 | ChatResponseMovePart | ChatResponseExtensionsPart | ChatResponsePullRequestPart | ChatPrepareToolInvocationPart | ChatToolInvocationPart | ChatResponseMultiDiffPart | ChatResponseThinkingProgressPart;
16489
export class ChatResponseWarningPart {
16590
value: MarkdownString;
16691
constructor(value: string | MarkdownString);
@@ -172,23 +97,6 @@ declare module 'vscode' {
17297
constructor(value: string, task?: (progress: Progress<ChatResponseWarningPart | ChatResponseReferencePart>) => Thenable<string | void>);
17398
}
17499

175-
/**
176-
* A specialized progress part for displaying thinking/reasoning steps.
177-
*/
178-
export class ChatResponseThinkingProgressPart {
179-
value: string | string[];
180-
id?: string;
181-
metadata?: { readonly [key: string]: any };
182-
task?: (progress: Progress<LanguageModelThinkingPart>) => Thenable<string | void>;
183-
184-
/**
185-
* Creates a new thinking progress part.
186-
* @param value An initial progress message
187-
* @param task A task that will emit thinking parts during its execution
188-
*/
189-
constructor(value: string | string[], id?: string, metadata?: { readonly [key: string]: any }, task?: (progress: Progress<LanguageModelThinkingPart>) => Thenable<string | void>);
190-
}
191-
192100
export class ChatResponseReferencePart2 {
193101
/**
194102
* The reference target.
@@ -263,15 +171,6 @@ declare module 'vscode' {
263171
constructor(extensions: string[]);
264172
}
265173

266-
export class ChatResponsePullRequestPart {
267-
readonly uri: Uri;
268-
readonly linkTag: string;
269-
readonly title: string;
270-
readonly description: string;
271-
readonly author: string;
272-
constructor(uri: Uri, title: string, description: string, author: string, linkTag: string);
273-
}
274-
275174
export interface ChatResponseStream {
276175

277176
/**
@@ -284,8 +183,6 @@ declare module 'vscode' {
284183
*/
285184
progress(value: string, task?: (progress: Progress<ChatResponseWarningPart | ChatResponseReferencePart>) => Thenable<string | void>): void;
286185

287-
thinkingProgress(thinkingDelta: ThinkingDelta): void;
288-
289186
textEdit(target: Uri, edits: TextEdit | TextEdit[]): void;
290187

291188
textEdit(target: Uri, isDone: true): void;
@@ -308,7 +205,7 @@ declare module 'vscode' {
308205
* TODO@API should this be MarkdownString?
309206
* TODO@API should actually be a more generic function that takes an array of buttons
310207
*/
311-
confirmation(title: string, message: string | MarkdownString, data: any, buttons?: string[]): void;
208+
confirmation(title: string, message: string, data: any, buttons?: string[]): void;
312209

313210
/**
314211
* Push a warning to this stream. Short-hand for
@@ -328,8 +225,6 @@ declare module 'vscode' {
328225
prepareToolInvocation(toolName: string): void;
329226

330227
push(part: ExtendedChatResponsePart): void;
331-
332-
clearToPreviousToolInvocation(reason: ChatResponseClearToPreviousToolInvocationReason): void;
333228
}
334229

335230
export enum ChatResponseReferencePartStatusKind {
@@ -338,26 +233,6 @@ declare module 'vscode' {
338233
Omitted = 3
339234
}
340235

341-
export type ThinkingDelta = {
342-
text?: string | string[];
343-
id: string;
344-
metadata?: { readonly [key: string]: any };
345-
} | {
346-
text?: string | string[];
347-
id?: string;
348-
metadata: { readonly [key: string]: any };
349-
} |
350-
{
351-
text: string | string[];
352-
id?: string;
353-
metadata?: { readonly [key: string]: any };
354-
};
355-
356-
export enum ChatResponseClearToPreviousToolInvocationReason {
357-
NoReason = 0,
358-
FilteredContentRetry = 1,
359-
CopyrightContentRetry = 2,
360-
}
361236

362237
/**
363238
* Does this piggy-back on the existing ChatRequest, or is it a different type of request entirely?
@@ -390,43 +265,6 @@ declare module 'vscode' {
390265
export const onDidChangeChatRequestTools: Event<ChatRequest>;
391266
}
392267

393-
export class LanguageModelToolExtensionSource {
394-
/**
395-
* ID of the extension that published the tool.
396-
*/
397-
readonly id: string;
398-
399-
/**
400-
* Label of the extension that published the tool.
401-
*/
402-
readonly label: string;
403-
404-
private constructor(id: string, label: string);
405-
}
406-
407-
export class LanguageModelToolMCPSource {
408-
/**
409-
* Editor-configured label of the MCP server that published the tool.
410-
*/
411-
readonly label: string;
412-
413-
/**
414-
* Server-defined name of the MCP server.
415-
*/
416-
readonly name: string;
417-
418-
/**
419-
* Server-defined instructions for MCP tool use.
420-
*/
421-
readonly instructions?: string;
422-
423-
private constructor(label: string, name: string, instructions?: string);
424-
}
425-
426-
export interface LanguageModelToolInformation {
427-
source: LanguageModelToolExtensionSource | LanguageModelToolMCPSource | undefined;
428-
}
429-
430268
// TODO@API fit this into the stream
431269
export interface ChatUsedContext {
432270
documents: ChatDocumentContext[];
@@ -476,10 +314,6 @@ declare module 'vscode' {
476314
participant?: string;
477315
command?: string;
478316
};
479-
/**
480-
* An optional detail string that will be rendered at the end of the response in certain UI contexts.
481-
*/
482-
details?: string;
483317
}
484318

485319
export namespace chat {
@@ -574,17 +408,6 @@ declare module 'vscode' {
574408
outcome: ChatEditingSessionActionOutcome;
575409
}
576410

577-
export interface ChatEditingHunkAction {
578-
// eslint-disable-next-line local/vscode-dts-string-type-literals
579-
kind: 'chatEditingHunkAction';
580-
uri: Uri;
581-
lineCount: number;
582-
linesAdded: number;
583-
linesRemoved: number;
584-
outcome: ChatEditingSessionActionOutcome;
585-
hasRemainingEdits: boolean;
586-
}
587-
588411
export enum ChatEditingSessionActionOutcome {
589412
Accepted = 1,
590413
Rejected = 2,
@@ -593,19 +416,14 @@ declare module 'vscode' {
593416

594417
export interface ChatUserActionEvent {
595418
readonly result: ChatResult;
596-
readonly action: ChatCopyAction | ChatInsertAction | ChatApplyAction | ChatTerminalAction | ChatCommandAction | ChatFollowupAction | ChatBugReportAction | ChatEditorAction | ChatEditingSessionAction | ChatEditingHunkAction;
419+
readonly action: ChatCopyAction | ChatInsertAction | ChatApplyAction | ChatTerminalAction | ChatCommandAction | ChatFollowupAction | ChatBugReportAction | ChatEditorAction | ChatEditingSessionAction;
597420
}
598421

599422
export interface ChatPromptReference {
600423
/**
601424
* TODO Needed for now to drive the variableName-type reference, but probably both of these should go away in the future.
602425
*/
603426
readonly name: string;
604-
605-
/**
606-
* The list of tools were referenced in the value of the reference
607-
*/
608-
readonly toolReferences?: readonly ChatLanguageModelToolReference[];
609427
}
610428

611429
export interface ChatResultFeedback {
@@ -647,13 +465,6 @@ declare module 'vscode' {
647465
}
648466

649467
export interface ChatRequest {
650-
readonly modeInstructions?: string;
651-
readonly modeInstructions2?: ChatRequestModeInstructions;
652-
}
653-
654-
export interface ChatRequestModeInstructions {
655-
readonly content: string;
656-
readonly toolReferences?: readonly ChatLanguageModelToolReference[];
657-
readonly metadata?: Record<string, boolean | string | number>;
468+
modeInstructions?: string;
658469
}
659470
}

0 commit comments

Comments
 (0)