import { Storage } from '../../storage/storage.js';
/**
 * Create all task-related tools
 * Version 2.0: Updated for unified task model with migration and hierarchy tools
 */
export declare function createTaskTools(storage: Storage): {
    create_task: {
        name: string;
        description: string;
        inputSchema: {
            name: import("zod").ZodString;
            details: import("zod").ZodString;
            projectId: import("zod").ZodString;
            parentId: import("zod").ZodOptional<import("zod").ZodString>;
            dependsOn: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
            priority: import("zod").ZodOptional<import("zod").ZodNumber>;
            complexity: import("zod").ZodOptional<import("zod").ZodNumber>;
            status: import("zod").ZodOptional<import("zod").ZodEnum<["pending", "in-progress", "blocked", "done"]>>;
            tags: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
            estimatedHours: import("zod").ZodOptional<import("zod").ZodNumber>;
        };
        handler: ({ name, details, projectId, parentId, dependsOn, priority, complexity, status, tags, estimatedHours }: {
            name: string;
            details: string;
            projectId: string;
            parentId?: string;
            dependsOn?: string[];
            priority?: number;
            complexity?: number;
            status?: "pending" | "in-progress" | "blocked" | "done";
            tags?: string[];
            estimatedHours?: number;
        }) => Promise<{
            content: {
                type: "text";
                text: string;
            }[];
            isError: boolean;
        } | {
            content: {
                type: "text";
                text: string;
            }[];
            isError?: undefined;
        }>;
    };
    delete_task: {
        name: string;
        description: string;
        inputSchema: {
            id: import("zod").ZodString;
            confirm: import("zod").ZodBoolean;
        };
        handler: ({ id, confirm }: {
            id: string;
            confirm: boolean;
        }) => Promise<{
            content: {
                type: "text";
                text: string;
            }[];
            isError: boolean;
        } | {
            content: {
                type: "text";
                text: string;
            }[];
            isError?: undefined;
        }>;
    };
    get_task: {
        name: string;
        description: string;
        inputSchema: {
            id: import("zod").ZodString;
        };
        handler: ({ id }: {
            id: string;
        }) => Promise<{
            content: {
                type: "text";
                text: string;
            }[];
            isError: boolean;
        } | {
            content: {
                type: "text";
                text: string;
            }[];
            isError?: undefined;
        }>;
    };
    list_tasks: {
        name: string;
        description: string;
        inputSchema: {
            projectId: import("zod").ZodString;
            parentId: import("zod").ZodOptional<import("zod").ZodString>;
            showHierarchy: import("zod").ZodOptional<import("zod").ZodBoolean>;
            includeCompleted: import("zod").ZodOptional<import("zod").ZodBoolean>;
        };
        handler: ({ projectId, parentId, showHierarchy, includeCompleted }: {
            projectId: string;
            parentId?: string;
            showHierarchy?: boolean;
            includeCompleted?: boolean;
        }) => Promise<{
            content: {
                type: "text";
                text: string;
            }[];
            isError: boolean;
        } | {
            content: {
                type: "text";
                text: string;
            }[];
            isError?: undefined;
        }>;
    };
    update_task: {
        name: string;
        description: string;
        inputSchema: {
            id: import("zod").ZodString;
            name: import("zod").ZodOptional<import("zod").ZodString>;
            details: import("zod").ZodOptional<import("zod").ZodString>;
            parentId: import("zod").ZodOptional<import("zod").ZodString>;
            completed: import("zod").ZodOptional<import("zod").ZodBoolean>;
            dependsOn: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
            priority: import("zod").ZodOptional<import("zod").ZodNumber>;
            complexity: import("zod").ZodOptional<import("zod").ZodNumber>;
            status: import("zod").ZodOptional<import("zod").ZodEnum<["pending", "in-progress", "blocked", "done"]>>;
            tags: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
            estimatedHours: import("zod").ZodOptional<import("zod").ZodNumber>;
            actualHours: import("zod").ZodOptional<import("zod").ZodNumber>;
        };
        handler: ({ id, name, details, parentId, completed, dependsOn, priority, complexity, status, tags, estimatedHours, actualHours }: {
            id: string;
            name?: string;
            details?: string;
            parentId?: string;
            completed?: boolean;
            dependsOn?: string[];
            priority?: number;
            complexity?: number;
            status?: "pending" | "in-progress" | "blocked" | "done";
            tags?: string[];
            estimatedHours?: number;
            actualHours?: number;
        }) => Promise<{
            content: {
                type: "text";
                text: string;
            }[];
            isError: boolean;
        } | {
            content: {
                type: "text";
                text: string;
            }[];
            isError?: undefined;
        }>;
    };
    migrate_subtasks: {
        name: string;
        description: string;
        inputSchema: {};
        handler: () => Promise<{
            content: {
                type: "text";
                text: string;
            }[];
            isError?: undefined;
        } | {
            content: {
                type: "text";
                text: string;
            }[];
            isError: boolean;
        }>;
    };
    move_task: {
        name: string;
        description: string;
        inputSchema: {
            taskId: {
                type: string;
            };
            newParentId: {
                type: string;
                optional: boolean;
            };
        };
        handler: ({ taskId, newParentId }: {
            taskId: string;
            newParentId?: string;
        }) => Promise<{
            content: {
                type: "text";
                text: string;
            }[];
            isError: boolean;
        } | {
            content: {
                type: "text";
                text: string;
            }[];
            isError?: undefined;
        }>;
    };
};
