import type { GetTaskPayloadResult, Task } from '@modelcontextprotocol/sdk/types.js'; import { UpstreamManagerService } from '../upstream/upstream-manager.service'; export declare class TaskAggregatorService { private readonly upstreamManager; private readonly logger; constructor(upstreamManager: UpstreamManagerService); /** * Build a gateway task ID by prefixing the upstream name. * Format: "${upstreamName}::${upstreamTaskId}" */ buildTaskId(upstreamName: string, upstreamTaskId: string): string; /** * Parse a gateway task ID back into upstream name and original task ID. * Returns undefined if the ID is not a valid prefixed gateway task ID. */ parseTaskId(prefixedId: string): { upstreamName: string; originalId: string; } | undefined; private prefixTask; /** * Fan out tasks/list to all healthy upstreams and merge results. * Task IDs are prefixed with the upstream name so they can be routed back. */ listTasks(cursor?: string): Promise<{ tasks: Task[]; nextCursor?: string; }>; /** * Forward tasks/get to the appropriate upstream after unprefixing the task ID. */ getTask(prefixedId: string): Promise; /** * Forward tasks/cancel to the appropriate upstream after unprefixing the task ID. */ cancelTask(prefixedId: string): Promise; /** * Forward tasks/result to the appropriate upstream after unprefixing the task ID. */ getTaskPayload(prefixedId: string): Promise; } //# sourceMappingURL=task-aggregator.service.d.ts.map