import { z } from "zod";
export declare const TOOL_NAME = "code-review-lens";
export declare const TOOL_PARAM_DESCRIPTIONS: {
    review_id: string;
    pull_request_id: string;
    repository: string;
    review_dimensions: string;
    files: string;
    findings: string;
    draft_number: string;
    total_drafts: string;
    is_critique: string;
    critique_focus: string;
    revision_instructions: string;
    next_step_needed: string;
    is_final_draft: string;
};
export declare const TOOL_SCHEMA: {
    review_id: z.ZodString;
    pull_request_id: z.ZodString;
    repository: z.ZodString;
    review_dimensions: z.ZodArray<z.ZodEnum<["performance", "security", "maintainability", "readability", "testability", "correctness", "documentation"]>, "many">;
    files: z.ZodArray<z.ZodObject<{
        path: z.ZodString;
        content: z.ZodString;
        language: z.ZodString;
        line_count: z.ZodNumber;
    }, "strip", z.ZodTypeAny, {
        path: string;
        content: string;
        language: string;
        line_count: number;
    }, {
        path: string;
        content: string;
        language: string;
        line_count: number;
    }>, "many">;
    findings: z.ZodArray<z.ZodObject<{
        file: z.ZodString;
        line_range: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
        dimension: z.ZodEnum<["performance", "security", "maintainability", "readability", "testability", "correctness", "documentation"]>;
        severity: z.ZodEnum<["info", "suggestion", "warning", "critical"]>;
        description: z.ZodString;
        suggested_fix: z.ZodOptional<z.ZodString>;
        justification: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        description: string;
        file: string;
        line_range: [number, number];
        dimension: "performance" | "security" | "maintainability" | "readability" | "testability" | "correctness" | "documentation";
        severity: "info" | "suggestion" | "warning" | "critical";
        suggested_fix?: string | undefined;
        justification?: string | undefined;
    }, {
        description: string;
        file: string;
        line_range: [number, number];
        dimension: "performance" | "security" | "maintainability" | "readability" | "testability" | "correctness" | "documentation";
        severity: "info" | "suggestion" | "warning" | "critical";
        suggested_fix?: string | undefined;
        justification?: string | undefined;
    }>, "many">;
    draft_number: z.ZodNumber;
    total_drafts: z.ZodNumber;
    is_critique: z.ZodOptional<z.ZodBoolean>;
    critique_focus: z.ZodOptional<z.ZodString>;
    revision_instructions: z.ZodOptional<z.ZodString>;
    next_step_needed: z.ZodBoolean;
    is_final_draft: z.ZodOptional<z.ZodBoolean>;
};
export declare const TOOL_DESCRIPTION = "\n    # Code Review Lens: Multi-Perspective Code Evaluation\n\n    A tool that facilitates structured, multi-dimensional code review through guided critique and improvement cycles.\n\n    ## When to Use This Tool:\n    - **Pre-submission Review:** Evaluating code before formal review submission\n    - **Team Code Reviews:** Guiding team review process with structured approach\n    - **Knowledge Transfer:** Capturing review insights for team learning\n    - **Maintenance Readiness:** Evaluating code readiness for long-term maintenance\n    - **Standard Compliance:** Verifying adherence to team coding standards\n    - **Cross-training:** Helping reviewers evaluate code outside their expertise\n\n    ## Key Capabilities:\n    - **Multi-dimensional Analysis:** Examines code from different perspectives (performance, security, maintainability)\n    - **Contextual Guidance:** Provides review focus appropriate to the code's purpose\n    - **Pattern Recognition:** Identifies common code issues and improvement opportunities\n    - **Progressive Depth:** Supports layered review from superficial to deep analysis\n    - **Review Consistency:** Ensures consistent evaluation across different reviewers\n    - **Learning Integration:** Connects review findings to learning resources\n    - **Suggestion Refinement:** Iteratively improves change recommendations\n\n    ## Parameters Explained:\n    - **review_id:** Unique identifier for the code review session.\n    \n    - **pull_request_id:** Identifier of the pull request or code submission being reviewed.\n    \n    - **repository:** Name of the repository containing the code being reviewed.\n    \n    - **review_dimensions:** Array of specific aspects being evaluated in the review:\n      * \"performance\": Analyzing code efficiency and resource usage\n      * \"security\": Identifying security vulnerabilities and risks\n      * \"maintainability\": Evaluating long-term code maintainability\n      * \"readability\": Assessing how easily the code can be understood\n      * \"testability\": Determining how well the code can be tested\n      * \"correctness\": Verifying logical correctness and bug absence\n      * \"documentation\": Evaluating code comments and documentation\n    \n    - **files:** Array of files being reviewed, each containing:\n      * \"path\": File location within the repository\n      * \"content\": Actual code content being reviewed\n      * \"language\": Programming language of the file\n      * \"line_count\": Number of lines in the file\n    \n    - **findings:** Array of review observations, each containing:\n      * \"file\": Path to the file containing the finding\n      * \"line_range\": Start and end line numbers [start, end]\n      * \"dimension\": Which review dimension this finding relates to\n      * \"severity\": Importance level (info, suggestion, warning, critical)\n      * \"description\": Explanation of the issue or observation\n      * \"suggested_fix\": Optional code suggestion to address the finding\n      * \"justification\": Optional explanation of why this is a concern\n    \n    - **draft_number:** Current draft number in the review iteration sequence (starting from 1).\n    \n    - **total_drafts:** Estimated total number of review drafts needed.\n    \n    - **is_critique:** Boolean indicating the current mode:\n      * true = Evaluating the current code review\n      * false = Implementing revisions to the review\n    \n    - **critique_focus:** (Required when is_critique=true) Specific aspect being evaluated, such as:\n      * \"completeness\": Ensuring all important code aspects are reviewed\n      * \"accuracy\": Verifying correctness of findings\n      * \"actionability\": Assessing how actionable the feedback is\n      * \"prioritization\": Evaluating the emphasis on the most important issues\n    \n    - **revision_instructions:** (Required when is_critique=false) Detailed guidance for improving the code review based on the preceding critique.\n    \n    - **next_step_needed:** Boolean flag indicating whether another critique or revision cycle is needed.\n    \n    - **is_final_draft:** (Optional) Boolean indicating whether this is the final iteration of the code review.\n\n    ## Best Practice Workflow:\n    1. **Start with Initial Draft:** Begin with a basic code review that identifies key issues across selected dimensions.\n    \n    2. **Alternate Critique and Revision:** Use is_critique=true to evaluate the review, then is_critique=false to implement improvements.\n    \n    3. **Focus Each Critique:** Choose a specific critique_focus for each evaluation cycle rather than attempting to address everything at once.\n    \n    4. **Provide Detailed Revision Guidance:** Include specific, actionable revision_instructions based on each critique.\n    \n    5. **Prioritize Findings:** Ensure the most critical issues receive appropriate emphasis and detail.\n    \n    6. **Include Actionable Suggestions:** Provide specific fixes or improvements for identified issues.\n    \n    7. **Balance Positive and Negative Feedback:** Highlight both problematic areas and well-implemented code.\n    \n    8. **Consider Educational Value:** Frame findings to promote learning and improvement.\n\n    ## Example Application:\n    - **Initial Draft:** Basic code review focusing on most obvious issues\n    - **Critique #1:** Focus on completeness to identify missing review dimensions\n    - **Revision #1:** Expand review to cover additional code aspects\n    - **Critique #2:** Focus on actionability of the feedback\n    - **Revision #2:** Enhance suggestions with specific code examples\n    - **Critique #3:** Focus on balancing criticism with positive reinforcement\n    - **Revision #3:** Add recognition of well-implemented patterns\n    - **Final Review:** Holistic evaluation of the complete code review\n    - **Final Revision:** Polish and finalize the review for submission\n\n    Code Review Lens is particularly valuable for elevating the quality of code reviews beyond simple issue-spotting to comprehensive, educational, and actionable feedback that improves both the code and the developer.\n";
