File size: 1,598 Bytes
a5d718a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import { Result, Task, McpError } from '../types.js';
/**

 * Base message type

 */
export interface BaseResponseMessage {
    type: string;
}
/**

 * Task status update message

 */
export interface TaskStatusMessage extends BaseResponseMessage {
    type: 'taskStatus';
    task: Task;
}
/**

 * Task created message (first message for task-augmented requests)

 */
export interface TaskCreatedMessage extends BaseResponseMessage {
    type: 'taskCreated';
    task: Task;
}
/**

 * Final result message (terminal)

 */
export interface ResultMessage<T extends Result> extends BaseResponseMessage {
    type: 'result';
    result: T;
}
/**

 * Error message (terminal)

 */
export interface ErrorMessage extends BaseResponseMessage {
    type: 'error';
    error: McpError;
}
/**

 * Union type representing all possible messages that can be yielded during request processing.

 * Note: Progress notifications are handled through the existing onprogress callback mechanism.

 * Side-channeled messages (server requests/notifications) are handled through registered handlers.

 */
export type ResponseMessage<T extends Result> = TaskStatusMessage | TaskCreatedMessage | ResultMessage<T> | ErrorMessage;
export type AsyncGeneratorValue<T> = T extends AsyncGenerator<infer U> ? U : never;
export declare function toArrayAsync<T extends AsyncGenerator<unknown>>(it: T): Promise<AsyncGeneratorValue<T>[]>;
export declare function takeResult<T extends Result, U extends AsyncGenerator<ResponseMessage<T>>>(it: U): Promise<T>;
//# sourceMappingURL=responseMessage.d.ts.map