import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri"; import { Action2 } from "@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions"; import { IInstantiationService, ServicesAccessor } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation"; import { IChatSessionRequestHistoryItem } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService"; export declare class ForkConversationAction extends Action2 { constructor(); run(accessor: ServicesAccessor, ...args: unknown[]): Promise; protected _openForkedSession(instantiationService: IInstantiationService, parentSessionResource: URI, forkedSessionResource: URI): Promise; /** * Hook for surfaces (the Agents window) that prefer to fork a multi-chat * session into a new peer chat in the same session rather than a brand-new * session. Returns `true` when it fully handled the fork; the default * implementation does nothing and returns `false`, so the standard * session-creating fork path runs. */ protected _tryForkAsChat(_instantiationService: IInstantiationService, _sourceSessionResource: URI, _request: IChatSessionRequestHistoryItem | undefined): Promise; private pendingFork; private forkContributedChatSession; }