/**
 * @license
 * Copyright 2025 Steven Roussey <sroussey@gmail.com>
 * SPDX-License-Identifier: Apache-2.0
 */
import type { TaskEntitlements } from "@workglow/task-graph";
import { CreateWorkflow, IExecuteContext, Task, TaskConfig } from "@workglow/task-graph";
import { DataPortSchema, FromSchema } from "@workglow/util/schema";
declare const outputSchemaAll: {
    readonly type: "object";
    readonly properties: {
        readonly tools: {
            readonly type: "array";
            readonly items: {
                readonly type: "object";
                readonly properties: {
                    readonly name: {
                        readonly type: "string";
                    };
                    readonly description: {
                        readonly type: "string";
                    };
                    readonly inputSchema: {
                        readonly type: "object";
                        readonly properties: {
                            readonly type: {
                                readonly type: "string";
                            };
                            readonly properties: {
                                readonly type: "object";
                                readonly additionalProperties: true;
                            };
                            readonly required: {
                                readonly type: "array";
                                readonly items: {
                                    readonly type: "string";
                                };
                            };
                        };
                        readonly additionalProperties: true;
                    };
                    readonly outputSchema: {
                        readonly type: "object";
                        readonly properties: {
                            readonly type: {
                                readonly type: "string";
                            };
                            readonly properties: {
                                readonly type: "object";
                                readonly additionalProperties: true;
                            };
                            readonly required: {
                                readonly type: "array";
                                readonly items: {
                                    readonly type: "string";
                                };
                            };
                        };
                        readonly additionalProperties: true;
                    };
                    readonly annotations: {
                        readonly type: "object";
                        readonly properties: {
                            readonly title: {
                                readonly type: "string";
                            };
                            readonly readOnlyHint: {
                                readonly type: "boolean";
                            };
                            readonly destructiveHint: {
                                readonly type: "boolean";
                            };
                            readonly idempotentHint: {
                                readonly type: "boolean";
                            };
                            readonly openWorldHint: {
                                readonly type: "boolean";
                            };
                        };
                        readonly additionalProperties: false;
                    };
                    readonly execution: {
                        readonly type: "object";
                        readonly properties: {
                            readonly taskSupport: {
                                readonly type: "string";
                                readonly enum: readonly ["optional", "required", "forbidden"];
                            };
                        };
                        readonly additionalProperties: false;
                    };
                    readonly _meta: {
                        readonly type: "object";
                        readonly additionalProperties: true;
                    };
                    readonly icons: {
                        readonly type: "array";
                        readonly items: {
                            readonly type: "object";
                            readonly properties: {
                                readonly src: {
                                    readonly type: "string";
                                };
                                readonly mimeType: {
                                    readonly type: "string";
                                };
                                readonly sizes: {
                                    readonly type: "array";
                                    readonly items: {
                                        readonly type: "string";
                                    };
                                };
                                readonly theme: {
                                    readonly type: "string";
                                    readonly enum: readonly ["light", "dark"];
                                };
                            };
                            readonly additionalProperties: false;
                        };
                    };
                    readonly title: {
                        readonly type: "string";
                    };
                };
                readonly required: readonly ["name", "inputSchema"];
                readonly additionalProperties: false;
            };
            readonly title: "Tools";
            readonly description: "The tools available on the MCP server";
        };
        readonly resources: {
            readonly type: "array";
            readonly items: {
                readonly type: "object";
                readonly properties: {
                    readonly uri: {
                        readonly type: "string";
                    };
                    readonly name: {
                        readonly type: "string";
                    };
                    readonly description: {
                        readonly type: "string";
                    };
                    readonly mimeType: {
                        readonly type: "string";
                    };
                    readonly annotations: {
                        readonly type: "object";
                        readonly properties: {
                            readonly audience: {
                                readonly type: "array";
                                readonly items: {
                                    readonly type: "string";
                                    readonly enum: readonly ["user", "assistant"];
                                };
                            };
                            readonly priority: {
                                readonly type: "number";
                            };
                            readonly lastModified: {
                                readonly type: "string";
                            };
                        };
                        readonly additionalProperties: false;
                    };
                    readonly _meta: {
                        readonly type: "object";
                        readonly additionalProperties: true;
                    };
                    readonly icons: {
                        readonly type: "array";
                        readonly items: {
                            readonly type: "object";
                            readonly properties: {
                                readonly src: {
                                    readonly type: "string";
                                };
                                readonly mimeType: {
                                    readonly type: "string";
                                };
                                readonly sizes: {
                                    readonly type: "array";
                                    readonly items: {
                                        readonly type: "string";
                                    };
                                };
                                readonly theme: {
                                    readonly type: "string";
                                    readonly enum: readonly ["light", "dark"];
                                };
                            };
                            readonly additionalProperties: false;
                        };
                    };
                    readonly title: {
                        readonly type: "string";
                    };
                };
                readonly required: readonly ["uri", "name"];
                readonly additionalProperties: false;
            };
            readonly title: "Resources";
            readonly description: "The resources available on the MCP server";
        };
        readonly prompts: {
            readonly type: "array";
            readonly items: {
                readonly type: "object";
                readonly properties: {
                    readonly name: {
                        readonly type: "string";
                    };
                    readonly description: {
                        readonly type: "string";
                    };
                    readonly arguments: {
                        readonly type: "array";
                        readonly items: {
                            readonly type: "object";
                            readonly properties: {
                                readonly name: {
                                    readonly type: "string";
                                };
                                readonly description: {
                                    readonly type: "string";
                                };
                                readonly required: {
                                    readonly type: "boolean";
                                };
                            };
                            readonly required: readonly ["name"];
                            readonly additionalProperties: false;
                        };
                    };
                    readonly _meta: {
                        readonly type: "object";
                        readonly additionalProperties: true;
                    };
                    readonly icons: {
                        readonly type: "array";
                        readonly items: {
                            readonly type: "object";
                            readonly properties: {
                                readonly src: {
                                    readonly type: "string";
                                };
                                readonly mimeType: {
                                    readonly type: "string";
                                };
                                readonly sizes: {
                                    readonly type: "array";
                                    readonly items: {
                                        readonly type: "string";
                                    };
                                };
                                readonly theme: {
                                    readonly type: "string";
                                    readonly enum: readonly ["light", "dark"];
                                };
                            };
                            readonly additionalProperties: false;
                        };
                    };
                    readonly title: {
                        readonly type: "string";
                    };
                };
                readonly required: readonly ["name"];
                readonly additionalProperties: false;
            };
            readonly title: "Prompts";
            readonly description: "The prompts available on the MCP server";
        };
    };
    readonly additionalProperties: false;
};
export type McpListTaskOutput = FromSchema<typeof outputSchemaAll>;
/** MCP list input (transport + server config fields, plus task-specific fields like list_type). */
export type McpListTaskInput = Record<string, unknown>;
export declare class McpListTask extends Task<McpListTaskInput, McpListTaskOutput, TaskConfig> {
    static type: string;
    static category: string;
    static title: string;
    static description: string;
    static readonly cacheable = false;
    static hasDynamicSchemas: boolean;
    static hasDynamicEntitlements: boolean;
    static entitlements(): TaskEntitlements;
    entitlements(): TaskEntitlements;
    static inputSchema(): DataPortSchema;
    static outputSchema(): {
        readonly type: "object";
        readonly properties: {
            readonly tools: {
                readonly type: "array";
                readonly items: {
                    readonly type: "object";
                    readonly properties: {
                        readonly name: {
                            readonly type: "string";
                        };
                        readonly description: {
                            readonly type: "string";
                        };
                        readonly inputSchema: {
                            readonly type: "object";
                            readonly properties: {
                                readonly type: {
                                    readonly type: "string";
                                };
                                readonly properties: {
                                    readonly type: "object";
                                    readonly additionalProperties: true;
                                };
                                readonly required: {
                                    readonly type: "array";
                                    readonly items: {
                                        readonly type: "string";
                                    };
                                };
                            };
                            readonly additionalProperties: true;
                        };
                        readonly outputSchema: {
                            readonly type: "object";
                            readonly properties: {
                                readonly type: {
                                    readonly type: "string";
                                };
                                readonly properties: {
                                    readonly type: "object";
                                    readonly additionalProperties: true;
                                };
                                readonly required: {
                                    readonly type: "array";
                                    readonly items: {
                                        readonly type: "string";
                                    };
                                };
                            };
                            readonly additionalProperties: true;
                        };
                        readonly annotations: {
                            readonly type: "object";
                            readonly properties: {
                                readonly title: {
                                    readonly type: "string";
                                };
                                readonly readOnlyHint: {
                                    readonly type: "boolean";
                                };
                                readonly destructiveHint: {
                                    readonly type: "boolean";
                                };
                                readonly idempotentHint: {
                                    readonly type: "boolean";
                                };
                                readonly openWorldHint: {
                                    readonly type: "boolean";
                                };
                            };
                            readonly additionalProperties: false;
                        };
                        readonly execution: {
                            readonly type: "object";
                            readonly properties: {
                                readonly taskSupport: {
                                    readonly type: "string";
                                    readonly enum: readonly ["optional", "required", "forbidden"];
                                };
                            };
                            readonly additionalProperties: false;
                        };
                        readonly _meta: {
                            readonly type: "object";
                            readonly additionalProperties: true;
                        };
                        readonly icons: {
                            readonly type: "array";
                            readonly items: {
                                readonly type: "object";
                                readonly properties: {
                                    readonly src: {
                                        readonly type: "string";
                                    };
                                    readonly mimeType: {
                                        readonly type: "string";
                                    };
                                    readonly sizes: {
                                        readonly type: "array";
                                        readonly items: {
                                            readonly type: "string";
                                        };
                                    };
                                    readonly theme: {
                                        readonly type: "string";
                                        readonly enum: readonly ["light", "dark"];
                                    };
                                };
                                readonly additionalProperties: false;
                            };
                        };
                        readonly title: {
                            readonly type: "string";
                        };
                    };
                    readonly required: readonly ["name", "inputSchema"];
                    readonly additionalProperties: false;
                };
                readonly title: "Tools";
                readonly description: "The tools available on the MCP server";
            };
            readonly resources: {
                readonly type: "array";
                readonly items: {
                    readonly type: "object";
                    readonly properties: {
                        readonly uri: {
                            readonly type: "string";
                        };
                        readonly name: {
                            readonly type: "string";
                        };
                        readonly description: {
                            readonly type: "string";
                        };
                        readonly mimeType: {
                            readonly type: "string";
                        };
                        readonly annotations: {
                            readonly type: "object";
                            readonly properties: {
                                readonly audience: {
                                    readonly type: "array";
                                    readonly items: {
                                        readonly type: "string";
                                        readonly enum: readonly ["user", "assistant"];
                                    };
                                };
                                readonly priority: {
                                    readonly type: "number";
                                };
                                readonly lastModified: {
                                    readonly type: "string";
                                };
                            };
                            readonly additionalProperties: false;
                        };
                        readonly _meta: {
                            readonly type: "object";
                            readonly additionalProperties: true;
                        };
                        readonly icons: {
                            readonly type: "array";
                            readonly items: {
                                readonly type: "object";
                                readonly properties: {
                                    readonly src: {
                                        readonly type: "string";
                                    };
                                    readonly mimeType: {
                                        readonly type: "string";
                                    };
                                    readonly sizes: {
                                        readonly type: "array";
                                        readonly items: {
                                            readonly type: "string";
                                        };
                                    };
                                    readonly theme: {
                                        readonly type: "string";
                                        readonly enum: readonly ["light", "dark"];
                                    };
                                };
                                readonly additionalProperties: false;
                            };
                        };
                        readonly title: {
                            readonly type: "string";
                        };
                    };
                    readonly required: readonly ["uri", "name"];
                    readonly additionalProperties: false;
                };
                readonly title: "Resources";
                readonly description: "The resources available on the MCP server";
            };
            readonly prompts: {
                readonly type: "array";
                readonly items: {
                    readonly type: "object";
                    readonly properties: {
                        readonly name: {
                            readonly type: "string";
                        };
                        readonly description: {
                            readonly type: "string";
                        };
                        readonly arguments: {
                            readonly type: "array";
                            readonly items: {
                                readonly type: "object";
                                readonly properties: {
                                    readonly name: {
                                        readonly type: "string";
                                    };
                                    readonly description: {
                                        readonly type: "string";
                                    };
                                    readonly required: {
                                        readonly type: "boolean";
                                    };
                                };
                                readonly required: readonly ["name"];
                                readonly additionalProperties: false;
                            };
                        };
                        readonly _meta: {
                            readonly type: "object";
                            readonly additionalProperties: true;
                        };
                        readonly icons: {
                            readonly type: "array";
                            readonly items: {
                                readonly type: "object";
                                readonly properties: {
                                    readonly src: {
                                        readonly type: "string";
                                    };
                                    readonly mimeType: {
                                        readonly type: "string";
                                    };
                                    readonly sizes: {
                                        readonly type: "array";
                                        readonly items: {
                                            readonly type: "string";
                                        };
                                    };
                                    readonly theme: {
                                        readonly type: "string";
                                        readonly enum: readonly ["light", "dark"];
                                    };
                                };
                                readonly additionalProperties: false;
                            };
                        };
                        readonly title: {
                            readonly type: "string";
                        };
                    };
                    readonly required: readonly ["name"];
                    readonly additionalProperties: false;
                };
                readonly title: "Prompts";
                readonly description: "The prompts available on the MCP server";
            };
        };
        readonly additionalProperties: false;
    };
    outputSchema(): DataPortSchema;
    setInput(input: Partial<McpListTaskInput>): void;
    execute(input: McpListTaskInput, context: IExecuteContext): Promise<McpListTaskOutput>;
}
export declare const mcpList: (input: McpListTaskInput, config?: TaskConfig) => Promise<McpListTaskOutput>;
declare module "@workglow/task-graph" {
    interface Workflow {
        mcpList: CreateWorkflow<McpListTaskInput, McpListTaskOutput, TaskConfig>;
    }
}
export {};
//# sourceMappingURL=McpListTask.d.ts.map