tdd-guard
Version: 
Automated Test-Driven Development enforcement for Claude Code
245 lines • 8.67 kB
TypeScript
import { z } from 'zod';
export declare const HookContextSchema: z.ZodObject<{
    session_id: z.ZodString;
    transcript_path: z.ZodString;
    hook_event_name: z.ZodString;
}, z.core.$strip>;
export declare const HookDataSchema: z.ZodObject<{
    session_id: z.ZodString;
    transcript_path: z.ZodString;
    hook_event_name: z.ZodString;
    tool_name: z.ZodString;
    tool_input: z.ZodUnknown;
}, z.core.$strip>;
export type HookData = z.infer<typeof HookDataSchema>;
export declare const UserPromptSubmitSchema: z.ZodObject<{
    session_id: z.ZodString;
    transcript_path: z.ZodString;
    hook_event_name: z.ZodString;
    prompt: z.ZodString;
    cwd: z.ZodString;
}, z.core.$strip>;
export type UserPromptSubmit = z.infer<typeof UserPromptSubmitSchema>;
export declare const SessionStartSchema: z.ZodObject<{
    session_id: z.ZodString;
    transcript_path: z.ZodString;
    hook_event_name: z.ZodLiteral<"SessionStart">;
    source: z.ZodEnum<{
        startup: "startup";
        resume: "resume";
        clear: "clear";
    }>;
}, z.core.$strip>;
export type SessionStart = z.infer<typeof SessionStartSchema>;
export declare const TodoSchema: z.ZodObject<{
    content: z.ZodString;
    status: z.ZodEnum<{
        pending: "pending";
        in_progress: "in_progress";
        completed: "completed";
    }>;
    priority: z.ZodEnum<{
        high: "high";
        medium: "medium";
        low: "low";
    }>;
    id: z.ZodString;
}, z.core.$strip>;
export type Todo = z.infer<typeof TodoSchema>;
export declare const EditSchema: z.ZodObject<{
    file_path: z.ZodString;
    old_string: z.ZodString;
    new_string: z.ZodString;
    replace_all: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>;
export type Edit = z.infer<typeof EditSchema>;
export declare const MultiEditSchema: z.ZodObject<{
    file_path: z.ZodString;
    edits: z.ZodArray<z.ZodObject<{
        old_string: z.ZodString;
        new_string: z.ZodString;
        replace_all: z.ZodOptional<z.ZodBoolean>;
    }, z.core.$strip>>;
}, z.core.$strip>;
export type MultiEdit = z.infer<typeof MultiEditSchema>;
export declare const WriteSchema: z.ZodObject<{
    file_path: z.ZodString;
    content: z.ZodString;
}, z.core.$strip>;
export type Write = z.infer<typeof WriteSchema>;
export declare const TodoWriteSchema: z.ZodObject<{
    todos: z.ZodArray<z.ZodObject<{
        content: z.ZodString;
        status: z.ZodEnum<{
            pending: "pending";
            in_progress: "in_progress";
            completed: "completed";
        }>;
        priority: z.ZodEnum<{
            high: "high";
            medium: "medium";
            low: "low";
        }>;
        id: z.ZodString;
    }, z.core.$strip>>;
}, z.core.$strip>;
export type TodoWrite = z.infer<typeof TodoWriteSchema>;
export declare const EditOperationSchema: z.ZodObject<{
    session_id: z.ZodString;
    transcript_path: z.ZodString;
    hook_event_name: z.ZodString;
    tool_name: z.ZodLiteral<"Edit">;
    tool_input: z.ZodObject<{
        file_path: z.ZodString;
        old_string: z.ZodString;
        new_string: z.ZodString;
        replace_all: z.ZodOptional<z.ZodBoolean>;
    }, z.core.$strip>;
}, z.core.$strip>;
export declare const MultiEditOperationSchema: z.ZodObject<{
    session_id: z.ZodString;
    transcript_path: z.ZodString;
    hook_event_name: z.ZodString;
    tool_name: z.ZodLiteral<"MultiEdit">;
    tool_input: z.ZodObject<{
        file_path: z.ZodString;
        edits: z.ZodArray<z.ZodObject<{
            old_string: z.ZodString;
            new_string: z.ZodString;
            replace_all: z.ZodOptional<z.ZodBoolean>;
        }, z.core.$strip>>;
    }, z.core.$strip>;
}, z.core.$strip>;
export declare const WriteOperationSchema: z.ZodObject<{
    session_id: z.ZodString;
    transcript_path: z.ZodString;
    hook_event_name: z.ZodString;
    tool_name: z.ZodLiteral<"Write">;
    tool_input: z.ZodObject<{
        file_path: z.ZodString;
        content: z.ZodString;
    }, z.core.$strip>;
}, z.core.$strip>;
export declare const TodoWriteOperationSchema: z.ZodObject<{
    session_id: z.ZodString;
    transcript_path: z.ZodString;
    hook_event_name: z.ZodString;
    tool_name: z.ZodLiteral<"TodoWrite">;
    tool_input: z.ZodObject<{
        todos: z.ZodArray<z.ZodObject<{
            content: z.ZodString;
            status: z.ZodEnum<{
                pending: "pending";
                in_progress: "in_progress";
                completed: "completed";
            }>;
            priority: z.ZodEnum<{
                high: "high";
                medium: "medium";
                low: "low";
            }>;
            id: z.ZodString;
        }, z.core.$strip>>;
    }, z.core.$strip>;
}, z.core.$strip>;
export type EditOperation = z.infer<typeof EditOperationSchema>;
export type MultiEditOperation = z.infer<typeof MultiEditOperationSchema>;
export type WriteOperation = z.infer<typeof WriteOperationSchema>;
export type TodoWriteOperation = z.infer<typeof TodoWriteOperationSchema>;
export declare const ToolOperationSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
    session_id: z.ZodString;
    transcript_path: z.ZodString;
    hook_event_name: z.ZodString;
    tool_name: z.ZodLiteral<"Edit">;
    tool_input: z.ZodObject<{
        file_path: z.ZodString;
        old_string: z.ZodString;
        new_string: z.ZodString;
        replace_all: z.ZodOptional<z.ZodBoolean>;
    }, z.core.$strip>;
}, z.core.$strip>, z.ZodObject<{
    session_id: z.ZodString;
    transcript_path: z.ZodString;
    hook_event_name: z.ZodString;
    tool_name: z.ZodLiteral<"MultiEdit">;
    tool_input: z.ZodObject<{
        file_path: z.ZodString;
        edits: z.ZodArray<z.ZodObject<{
            old_string: z.ZodString;
            new_string: z.ZodString;
            replace_all: z.ZodOptional<z.ZodBoolean>;
        }, z.core.$strip>>;
    }, z.core.$strip>;
}, z.core.$strip>, z.ZodObject<{
    session_id: z.ZodString;
    transcript_path: z.ZodString;
    hook_event_name: z.ZodString;
    tool_name: z.ZodLiteral<"Write">;
    tool_input: z.ZodObject<{
        file_path: z.ZodString;
        content: z.ZodString;
    }, z.core.$strip>;
}, z.core.$strip>, z.ZodObject<{
    session_id: z.ZodString;
    transcript_path: z.ZodString;
    hook_event_name: z.ZodString;
    tool_name: z.ZodLiteral<"TodoWrite">;
    tool_input: z.ZodObject<{
        todos: z.ZodArray<z.ZodObject<{
            content: z.ZodString;
            status: z.ZodEnum<{
                pending: "pending";
                in_progress: "in_progress";
                completed: "completed";
            }>;
            priority: z.ZodEnum<{
                high: "high";
                medium: "medium";
                low: "low";
            }>;
            id: z.ZodString;
        }, z.core.$strip>>;
    }, z.core.$strip>;
}, z.core.$strip>], "tool_name">;
export type ToolOperation = z.infer<typeof ToolOperationSchema>;
export declare const FileModificationSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
    session_id: z.ZodString;
    transcript_path: z.ZodString;
    hook_event_name: z.ZodString;
    tool_name: z.ZodLiteral<"Edit">;
    tool_input: z.ZodObject<{
        file_path: z.ZodString;
        old_string: z.ZodString;
        new_string: z.ZodString;
        replace_all: z.ZodOptional<z.ZodBoolean>;
    }, z.core.$strip>;
}, z.core.$strip>, z.ZodObject<{
    session_id: z.ZodString;
    transcript_path: z.ZodString;
    hook_event_name: z.ZodString;
    tool_name: z.ZodLiteral<"MultiEdit">;
    tool_input: z.ZodObject<{
        file_path: z.ZodString;
        edits: z.ZodArray<z.ZodObject<{
            old_string: z.ZodString;
            new_string: z.ZodString;
            replace_all: z.ZodOptional<z.ZodBoolean>;
        }, z.core.$strip>>;
    }, z.core.$strip>;
}, z.core.$strip>, z.ZodObject<{
    session_id: z.ZodString;
    transcript_path: z.ZodString;
    hook_event_name: z.ZodString;
    tool_name: z.ZodLiteral<"Write">;
    tool_input: z.ZodObject<{
        file_path: z.ZodString;
        content: z.ZodString;
    }, z.core.$strip>;
}, z.core.$strip>], "tool_name">;
export type FileModification = z.infer<typeof FileModificationSchema>;
export declare const isEditOperation: (op: ToolOperation) => op is EditOperation;
export declare const isMultiEditOperation: (op: ToolOperation) => op is MultiEditOperation;
export declare const isWriteOperation: (op: ToolOperation) => op is WriteOperation;
export declare const isTodoWriteOperation: (op: ToolOperation) => op is TodoWriteOperation;
export declare const isFileModification: (op: ToolOperation) => op is FileModification;
//# sourceMappingURL=toolSchemas.d.ts.map