import { BaseTool } from '../base.js';
import { ToolExecutionContext } from '../types.js';
interface TodoItem {
    id: string;
    description: string;
    status: 'pending' | 'in_progress' | 'completed' | 'blocked' | 'cancelled';
    priority: 'high' | 'medium' | 'low';
    createdAt: Date;
    updatedAt: Date;
    dependencies?: string[];
    metadata?: {
        estimatedTime?: number;
        actualTime?: number;
        blockedReason?: string;
        completionNotes?: string;
    };
}
export declare const todoEvents: EventTarget;
export declare function getTodosForContext(contextId: string): TodoItem[];
export declare function updateTodoByDescription(contextId: string, description: string, updates: Partial<TodoItem>): boolean;
export declare class TodoListTool extends BaseTool {
    name: string;
    displayName: string;
    description: string;
    category: "productivity";
    icon: string;
    parameters: ({
        name: string;
        type: "string";
        description: string;
        required: boolean;
        enum: string[];
    } | {
        name: string;
        type: "string";
        description: string;
        required: boolean;
        enum?: undefined;
    })[];
    permissions: {};
    ui: {
        showProgress: boolean;
        collapsible: boolean;
        dangerous: boolean;
    };
    protected run(params: any, context: ToolExecutionContext): Promise<any>;
    private addTodo;
    private updateTodo;
    private removeTodo;
    private listTodos;
    private clearTodos;
    private createCompactDisplay;
    private getCheckbox;
}
export {};
//# sourceMappingURL=todo-list.d.ts.map