import { Type } from "typebox";
import type { ToolDefinition } from "../extensions/types.ts";
interface TodoFrontMatter {
    id: string;
    title: string;
    tags: string[];
    status: string;
    created_at: string;
    assigned_to_session?: string;
}
interface TodoRecord extends TodoFrontMatter {
    body: string;
}
declare const TodoParams: Type.TObject<{
    action: Type.TUnsafe<"append" | "claim" | "create" | "delete" | "get" | "list" | "list-all" | "release" | "update">;
    id: Type.TOptional<Type.TString>;
    title: Type.TOptional<Type.TString>;
    status: Type.TOptional<Type.TString>;
    tags: Type.TOptional<Type.TArray<Type.TString>>;
    body: Type.TOptional<Type.TString>;
    force: Type.TOptional<Type.TBoolean>;
}>;
type TodoToolDetails = {
    action: "list" | "list-all";
    todos: TodoFrontMatter[];
    currentSessionId?: string;
    error?: string;
} | {
    action: "get" | "create" | "update" | "append" | "delete" | "claim" | "release";
    todo?: TodoRecord;
    error?: string;
};
export declare function createTodoToolDefinition(cwd?: string): ToolDefinition<typeof TodoParams, TodoToolDetails>;
export {};
//# sourceMappingURL=todos.d.ts.map