import { IChatAgentCommand, IChatAgentRequest, IChatAgentResult, IChatAgentWelcomeMessage, IChatFollowup, IChatReplyFollowup } from '@opensumi/ide-ai-native/lib/common'; import { IRPCProtocol } from '@opensumi/ide-connection'; import { CancellationToken } from '@opensumi/ide-core-common'; import { IChatMessage } from '@opensumi/ide-core-common/lib/types/ai-native'; import { IChatProgressChunk, IExtHostChatAgents } from '../../../common/sumi/chat-agents'; import { IExtensionDescription } from '../../../common/vscode'; import type * as sumi from 'sumi'; export declare class ExtHostChatAgents implements IExtHostChatAgents { private rpcProtocol; private static idPool; private proxy; private readonly agents; private readonly logger; private readonly previousResultMap; private readonly resultsBySessionAndRequestId; constructor(rpcProtocol: IRPCProtocol); createChatAgent(extension: IExtensionDescription, name: string, handler: sumi.ChatAgentHandler): sumi.ChatAgent; createInlineChatAgent(extension: IExtensionDescription, name: string, handler: sumi.ChatAgentHandler): sumi.InlineChatAgent; sendMessage(extension: IExtensionDescription, chunk: sumi.ChatAgentCustomReplyMessage): void; $invokeAgent(handle: number, request: IChatAgentRequest, context: { history: IChatMessage[]; }, token: CancellationToken): Promise; $releaseSession(sessionId: string): void; $provideSlashCommands(handle: number, token: CancellationToken): Promise; $provideFollowups(handle: number, sessionId: string, token: CancellationToken): Promise; $provideSampleQuestions(handle: number, token: CancellationToken): Promise; $provideChatWelcomeMessage(handle: number, token: CancellationToken): Promise; } export declare function createChatApiFactory(extension: IExtensionDescription, extHostChatAgents: ExtHostChatAgents): { createChatAgent(name: string, handler: sumi.ChatAgentHandler): sumi.ChatAgent; sendMessage(chunk: sumi.ChatAgentContent): void; createInlineChatAgent(name: string, handler: sumi.ChatAgentHandler): sumi.InlineChatAgent; }; export declare function convertProgress(progress: sumi.ChatAgentProgress, extension: IExtensionDescription): IChatProgressChunk | undefined; //# sourceMappingURL=ext.host.chat.impl.d.ts.map