/**
 * Task Management System - Main Export
 * Comprehensive task management with orchestration features
 * Integrates with TodoWrite/TodoRead for coordination and Memory for persistence
 */
import type { IMemoryManager } from "../memory/manager";
import type { ILogger } from "../core/logger";
import { TaskEngine } from "./engine";
import { createTaskCreateCommand, createTaskListCommand, createTaskStatusCommand, createTaskCancelCommand, createTaskWorkflowCommand } from "./commands";
import { TaskCoordinator, TodoItem } from "./coordination";
export type { WorkflowTask, TaskDependency, ResourceRequirement, TaskSchedule, TaskExecution, TaskMetrics, TaskLog, Workflow, TaskFilter, TaskSort, TaskCheckpoint, } from "./engine";
export { TaskEngine } from "./engine";
export type { TaskCommandContext } from "./commands";
export { createTaskCreateCommand, createTaskListCommand, createTaskStatusCommand, createTaskCancelCommand, createTaskWorkflowCommand, } from "./commands";
export type { TodoItem, MemoryEntry, CoordinationContext } from "./coordination";
export { TaskCoordinator } from "./coordination";
/**
 * Initialize the complete task management system
 */
export declare function initializeTaskManagement(config?: {
    maxConcurrentTasks?: number;
    memoryManager?: IMemoryManager;
    logger?: ILogger;
}): Promise<{
    taskEngine: TaskEngine;
    taskCoordinator: TaskCoordinator;
    commands: {
        create: ReturnType<typeof createTaskCreateCommand>;
        list: ReturnType<typeof createTaskListCommand>;
        status: ReturnType<typeof createTaskStatusCommand>;
        cancel: ReturnType<typeof createTaskCancelCommand>;
        workflow: ReturnType<typeof createTaskWorkflowCommand>;
    };
}>;
/**
 * Helper function to create TodoWrite-style task breakdown
 */
export declare function createTaskTodos(objective: string, options?: {
    strategy?: "research" | "development" | "analysis" | "testing" | "optimization" | "maintenance";
    maxTasks?: number;
    batchOptimized?: boolean;
    parallelExecution?: boolean;
    memoryCoordination?: boolean;
}, coordinator?: TaskCoordinator): Promise<TodoItem[]>;
/**
 * Helper function to launch parallel agents (Task tool pattern)
 */
export declare function launchParallelAgents(tasks: Array<{
    agentType: string;
    objective: string;
    mode?: string;
    configuration?: Record<string, unknown>;
    memoryKey?: string;
    batchOptimized?: boolean;
}>, coordinator?: TaskCoordinator): Promise<string[]>;
/**
 * Helper function to store coordination data in Memory
 */
export declare function storeCoordinationData(key: string, value: unknown, options?: {
    namespace?: string;
    tags?: string[];
    expiresAt?: Date;
}, coordinator?: TaskCoordinator): Promise<void>;
/**
 * Helper function to retrieve coordination data from Memory
 */
export declare function retrieveCoordinationData(key: string, namespace?: string, coordinator?: TaskCoordinator): Promise<unknown | null>;
/**
 * Examples and usage patterns for Claude Code integration
 */
export declare const USAGE_EXAMPLES: {
    todoWrite: string;
    taskTool: string;
    memoryCoordination: string;
    batchOperations: string;
    swarmCoordination: string;
};
/**
 * Command line usage examples
 */
export declare const CLI_EXAMPLES: {
    taskCreate: string;
    taskList: string;
    taskStatus: string;
    taskCancel: string;
    taskWorkflow: string;
};
declare const _default: {
    TaskEngine: typeof TaskEngine;
    TaskCoordinator: typeof TaskCoordinator;
    initializeTaskManagement: typeof initializeTaskManagement;
    createTaskTodos: typeof createTaskTodos;
    launchParallelAgents: typeof launchParallelAgents;
    storeCoordinationData: typeof storeCoordinationData;
    retrieveCoordinationData: typeof retrieveCoordinationData;
    USAGE_EXAMPLES: {
        todoWrite: string;
        taskTool: string;
        memoryCoordination: string;
        batchOperations: string;
        swarmCoordination: string;
    };
    CLI_EXAMPLES: {
        taskCreate: string;
        taskList: string;
        taskStatus: string;
        taskCancel: string;
        taskWorkflow: string;
    };
};
export default _default;
//# sourceMappingURL=index.d.ts.map