import { Injector } from '@opensumi/di'; import { Disposable } from '@opensumi/ide-core-common'; import { IHistoryChatMessage } from '@opensumi/ide-core-common/lib/types/ai-native'; import { IChatAgentService, IChatFollowup, IChatRequestMessage, IChatResponseErrorDetails } from '../../common'; import { ChatModel, ChatRequestModel, IChatProgressResponseContent } from './chat-model'; interface ISessionModel { sessionId: string; modelId: string; history: { additional: Record; messages: IHistoryChatMessage[]; }; requests: { requestId: string; message: IChatRequestMessage; response: { isCanceled: boolean; responseText: string; responseContents: IChatProgressResponseContent[]; responseParts: IChatProgressResponseContent[]; errorDetails: IChatResponseErrorDetails | undefined; followups: IChatFollowup[]; }; }[]; } export declare class ChatManagerService extends Disposable { #private; private storageInitEmitter; onStorageInit: import("@opensumi/ide-core-browser").Event; injector: Injector; chatAgentService: IChatAgentService; private storageProvider; private preferenceService; private _chatStorage; protected fromJSON(data: ISessionModel[]): ChatModel[]; constructor(); init(): Promise; getSessions(): ChatModel[]; startSession(): ChatModel; getSession(sessionId: string): ChatModel | undefined; clearSession(sessionId: string): void; createRequest(sessionId: string, message: string, agentId: string, command?: string, images?: string[]): ChatRequestModel | undefined; sendRequest(sessionId: string, request: ChatRequestModel, regenerate: boolean): Promise; protected listenSession(session: ChatModel): void; protected saveSessions(): void; cancelRequest(sessionId: string): void; } export {}; //# sourceMappingURL=chat-manager.service.d.ts.map