import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js"; import { ToolBase } from "../../../shared/index.js"; import { z } from "zod"; /** * Parameter schema for checking job status */ export declare const ParamsSchema: z.ZodObject<{ action: z.ZodDefault>; jobId: z.ZodOptional; type: z.ZodOptional; status: z.ZodOptional>; }, z.core.$strip>; export type Params = z.infer; /** * Tool for checking async job status * * **Actions:** * - `get`: Get status of a specific job * - `list`: List all jobs with optional filters * * **Job Lifecycle:** * 1. `pending` - Job created, waiting to start * 2. `processing` - Job is running * 3. `completed` - Job finished successfully (has result) * 4. `failed` - Job failed (has error) * * **Examples:** * * Get job status: * ```json * { * "action": "get", * "jobId": "550e8400-e29b-41d4-a716-446655440000" * } * ``` * * Returns: * ```json * { * "id": "550e8400-e29b-41d4-a716-446655440000", * "type": "space-copy", * "status": "processing", * "progress": { * "current": 150, * "total": 500, * "percentage": 30, * "step": "copying_entries" * }, * "createdAt": "2025-12-12T15:30:00.000Z", * "updatedAt": "2025-12-12T15:32:00.000Z" * } * ``` * * List all jobs: * ```json * { * "action": "list", * "type": "space-copy", * "status": "completed" * } * ``` * * Returns: * ```json * { * "jobs": [ * { * "id": "...", * "type": "space-copy", * "status": "completed", * "result": { ... }, * "createdAt": "...", * "updatedAt": "..." * } * ], * "total": 1 * } * ``` */ export declare class JobStatusTool extends ToolBase { protected config: { name: string; description: string; }; protected getParamsSchema(): z.ZodObject<{ action: z.ZodDefault>; jobId: z.ZodOptional; type: z.ZodOptional; status: z.ZodOptional>; }, z.core.$strip>; protected getOutputSchema(): z.ZodObject<{ job: z.ZodOptional; progress: z.ZodOptional>; percentage: z.ZodOptional; }, z.core.$strip>>; result: z.ZodOptional; error: z.ZodOptional; createdAt: z.ZodString; updatedAt: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strip>>; jobs: z.ZodOptional; progress: z.ZodOptional>; percentage: z.ZodOptional; }, z.core.$strip>>; result: z.ZodOptional; error: z.ZodOptional; createdAt: z.ZodString; updatedAt: z.ZodString; metadata: z.ZodOptional>; }, z.core.$strip>>>; }, z.core.$strip>; protected execute(params: Params): Promise; } //# sourceMappingURL=JobStatus.d.ts.map