import { MaybePromise, ProgressService, URI, Event } from '@theia/core'; import { ChatAgent, ChatService, ChatSession } from '../common'; import { AgentService, PromptService, ResolvedPromptFragment } from '@theia/ai-core'; export interface SummaryMetadata { id?: string; label: string; uri?: URI; sessionId?: string; } export interface Summary extends SummaryMetadata { summary: string; id: string; } export declare const TaskContextStorageService: unique symbol; export interface TaskContextStorageService { onDidChange: Event; store(summary: Summary): MaybePromise; getAll(): Summary[]; get(identifier: string): MaybePromise; delete(identifier: string): MaybePromise; open(identifier: string): Promise; } export declare class TaskContextService { protected pendingSummaries: Map>; protected readonly chatService: ChatService; protected readonly agentService: AgentService; protected readonly promptService: PromptService; protected readonly storageService: TaskContextStorageService; protected readonly progressService: ProgressService; get onDidChange(): Event; getAll(): Array; getSummary(sessionIdOrFilePath: string): Promise; /** Returns an ID that can be used to refer to the summary in the future. */ summarize(session: ChatSession, promptId?: string, agent?: ChatAgent, override?: boolean): Promise; protected getLlmSummary(session: ChatSession, prompt: ResolvedPromptFragment | undefined, agent?: ChatAgent): Promise; protected getSystemPrompt(session: ChatSession, promptId?: string): Promise; hasSummary(chatSession: ChatSession): boolean; protected getSummaryForSession(chatSession: ChatSession): Summary | undefined; getLabel(id: string): string | undefined; open(id: string): Promise; } //# sourceMappingURL=task-context-service.d.ts.map