import { 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 { IChatPlanReviewResult } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService/chatService"; import { IPlanReviewFeedbackService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackService.service"; export interface IPlanReviewFeedbackItem { readonly id: string; readonly line: number; readonly column: number; readonly text: string; } export declare class PlanReviewFeedbackService extends Disposable implements IPlanReviewFeedbackService { readonly _serviceBrand: undefined; private readonly _registrations; private readonly _onDidChangeFeedback; readonly onDidChangeFeedback: Event; private readonly _onDidChangeNavigation; readonly onDidChangeNavigation: Event; private readonly _onDidChangeRegistrations; readonly onDidChangeRegistrations: Event; registerPlanReview(planUri: URI, onSubmit: (result: IChatPlanReviewResult) => void): IDisposable; isActivePlanReview(uri: URI): boolean; addFeedback(planUri: URI, line: number, column: number, text: string): string; removeFeedback(planUri: URI, feedbackId: string): void; updateFeedback(planUri: URI, feedbackId: string, newText: string): void; getFeedback(planUri: URI): readonly IPlanReviewFeedbackItem[]; clearFeedback(planUri: URI): void; getNextFeedback(planUri: URI, next: boolean): IPlanReviewFeedbackItem | undefined; getNavigationBearing(planUri: URI): { activeIdx: number; totalCount: number; }; setNavigationAnchor(planUri: URI, itemId: string | undefined): void; submitAllFeedback(planUri: URI): void; private _formatFeedback; }