/** * MyPy lens for Python static type checking * * MyPy is the reference implementation of Python static type checker. * Output format: JSON Lines (one JSON object per line with --output=json) * * @see https://mypy.readthedocs.io/ */ import { BaseLens } from '../base/BaseLens.js'; import { LensResult, ExecuteResult } from '../../types/index.js'; /** * MyPy JSON output message format (one per line) */ interface MyPyMessage { /** Source file path */ file: string; /** Line number (1-indexed) */ line: number; /** Column number (1-indexed) */ column: number; /** Error message */ message: string; /** Optional hint */ hint: string | null; /** Error code (e.g., "arg-type", "assignment", "name-defined") */ code: string | null; /** Severity: "error" or "note" */ severity: 'error' | 'note'; } /** * Parsed MyPy output */ interface MyPyOutput { messages: MyPyMessage[]; /** Files that were analyzed (from --verbose or inferred) */ analyzedFiles: string[]; } /** * Lens for MyPy Python type checker */ export declare class MyPyLens extends BaseLens { readonly name = "mypy"; readonly description = "Python static type checker"; readonly languages: string[]; readonly supportedTools: string[]; readonly requirements: import("../..").LensRequirements; private pathMapper?; /** * Calculate quality score (0-100) from MyPy results */ static calculateQualityScore(result: LensResult): number; /** * Parse MyPy output (supports both JSON and text formats) */ parse(output: ExecuteResult): MyPyOutput; /** * Format MyPy results to standard format */ format(parsed: MyPyOutput): LensResult; /** * Map MyPy severity to standard severity */ private mapMyPySeverity; /** * Categorize MyPy error codes */ private categorizeCode; /** * Get or create path mapper */ private getPathMapper; /** * Override execute to ensure JSON format if available */ execute(): Promise; } export {}; //# sourceMappingURL=MyPyLens.d.ts.map