import { z } from 'zod'; export declare const DetectedFrameworkPrimarySchema: z.ZodEnum<["nextjs-app-router", "nextjs-pages-router", "express", "remix", "nuxt", "sveltekit", "astro", "vite", "unknown"]>; export declare const FrameworkDetectionConfidenceSchema: z.ZodEnum<["high", "medium", "low"]>; export declare const TestFrameworkDetectedSchema: z.ZodEnum<["playwright", "cypress-e2e", "cypress-component", "jest", "vitest", "other"]>; export declare const FrameworkDetectionSchema: z.ZodObject<{ primary: z.ZodEnum<["nextjs-app-router", "nextjs-pages-router", "express", "remix", "nuxt", "sveltekit", "astro", "vite", "unknown"]>; confidence: z.ZodEnum<["high", "medium", "low"]>; evidence: z.ZodArray; testFrameworks: z.ZodArray, "many">; }, "strip", z.ZodTypeAny, { confidence: "high" | "medium" | "low"; evidence: string[]; primary: "unknown" | "nextjs-app-router" | "nextjs-pages-router" | "express" | "remix" | "nuxt" | "sveltekit" | "astro" | "vite"; testFrameworks: ("playwright" | "cypress-e2e" | "cypress-component" | "jest" | "vitest" | "other")[]; }, { confidence: "high" | "medium" | "low"; evidence: string[]; primary: "unknown" | "nextjs-app-router" | "nextjs-pages-router" | "express" | "remix" | "nuxt" | "sveltekit" | "astro" | "vite"; testFrameworks: ("playwright" | "cypress-e2e" | "cypress-component" | "jest" | "vitest" | "other")[]; }>; export type DetectedFrameworkPrimary = z.infer; export type FrameworkDetectionResult = z.infer; export declare const RepoRouteSchema: z.ZodObject<{ path: z.ZodString; file: z.ZodString; method: z.ZodEnum<["GET", "POST", "PUT", "DELETE", "PATCH", "unknown"]>; }, "strip", z.ZodTypeAny, { path: string; method: "unknown" | "GET" | "POST" | "PUT" | "DELETE" | "PATCH"; file: string; }, { path: string; method: "unknown" | "GET" | "POST" | "PUT" | "DELETE" | "PATCH"; file: string; }>; export declare const TestFileSchema: z.ZodObject<{ file: z.ZodString; type: z.ZodEnum<["playwright", "cypress-e2e", "cypress-component", "jest", "vitest", "other"]>; coveredPaths: z.ZodArray; }, "strip", z.ZodTypeAny, { type: "playwright" | "cypress-e2e" | "cypress-component" | "jest" | "vitest" | "other"; file: string; coveredPaths: string[]; }, { type: "playwright" | "cypress-e2e" | "cypress-component" | "jest" | "vitest" | "other"; file: string; coveredPaths: string[]; }>; export declare const CypressStructureSchema: z.ZodObject<{ detected: z.ZodBoolean; e2eFolder: z.ZodOptional; componentFolder: z.ZodOptional; fixturesFolder: z.ZodOptional; supportFolder: z.ZodOptional; hasCommandsFile: z.ZodBoolean; existingE2eFiles: z.ZodArray; existingComponentFiles: z.ZodArray; }, "strip", z.ZodTypeAny, { detected: boolean; hasCommandsFile: boolean; existingE2eFiles: string[]; existingComponentFiles: string[]; e2eFolder?: string | undefined; componentFolder?: string | undefined; fixturesFolder?: string | undefined; supportFolder?: string | undefined; }, { detected: boolean; hasCommandsFile: boolean; existingE2eFiles: string[]; existingComponentFiles: string[]; e2eFolder?: string | undefined; componentFolder?: string | undefined; fixturesFolder?: string | undefined; supportFolder?: string | undefined; }>; export declare const RepoAnalysisSchema: z.ZodObject<{ scannedAt: z.ZodString; repoPath: z.ZodString; routes: z.ZodArray; }, "strip", z.ZodTypeAny, { path: string; method: "unknown" | "GET" | "POST" | "PUT" | "DELETE" | "PATCH"; file: string; }, { path: string; method: "unknown" | "GET" | "POST" | "PUT" | "DELETE" | "PATCH"; file: string; }>, "many">; testFiles: z.ZodArray; coveredPaths: z.ZodArray; }, "strip", z.ZodTypeAny, { type: "playwright" | "cypress-e2e" | "cypress-component" | "jest" | "vitest" | "other"; file: string; coveredPaths: string[]; }, { type: "playwright" | "cypress-e2e" | "cypress-component" | "jest" | "vitest" | "other"; file: string; coveredPaths: string[]; }>, "many">; missingTestIds: z.ZodArray; interactiveTsxFilesScanned: z.ZodOptional; cypressStructure: z.ZodObject<{ detected: z.ZodBoolean; e2eFolder: z.ZodOptional; componentFolder: z.ZodOptional; fixturesFolder: z.ZodOptional; supportFolder: z.ZodOptional; hasCommandsFile: z.ZodBoolean; existingE2eFiles: z.ZodArray; existingComponentFiles: z.ZodArray; }, "strip", z.ZodTypeAny, { detected: boolean; hasCommandsFile: boolean; existingE2eFiles: string[]; existingComponentFiles: string[]; e2eFolder?: string | undefined; componentFolder?: string | undefined; fixturesFolder?: string | undefined; supportFolder?: string | undefined; }, { detected: boolean; hasCommandsFile: boolean; existingE2eFiles: string[]; existingComponentFiles: string[]; e2eFolder?: string | undefined; componentFolder?: string | undefined; fixturesFolder?: string | undefined; supportFolder?: string | undefined; }>; framework: z.ZodOptional; confidence: z.ZodEnum<["high", "medium", "low"]>; evidence: z.ZodArray; testFrameworks: z.ZodArray, "many">; }, "strip", z.ZodTypeAny, { confidence: "high" | "medium" | "low"; evidence: string[]; primary: "unknown" | "nextjs-app-router" | "nextjs-pages-router" | "express" | "remix" | "nuxt" | "sveltekit" | "astro" | "vite"; testFrameworks: ("playwright" | "cypress-e2e" | "cypress-component" | "jest" | "vitest" | "other")[]; }, { confidence: "high" | "medium" | "low"; evidence: string[]; primary: "unknown" | "nextjs-app-router" | "nextjs-pages-router" | "express" | "remix" | "nuxt" | "sveltekit" | "astro" | "vite"; testFrameworks: ("playwright" | "cypress-e2e" | "cypress-component" | "jest" | "vitest" | "other")[]; }>>; automationMaturity: z.ZodOptional; score: z.ZodNumber; weight: z.ZodNumber; evidence: z.ZodArray; recommendations: z.ZodArray; applicability: z.ZodOptional>; reason: z.ZodOptional; guidance: z.ZodOptional; }, "strip", z.ZodTypeAny, { recommendations: string[]; dimension: "test-coverage-breadth" | "framework-adoption" | "test-id-hygiene" | "ci-integration" | "auth-test-coverage" | "component-test-ratio" | "api-test-coverage"; score: number; weight: number; evidence: string[]; reason?: string | undefined; applicability?: "unknown" | "applicable" | "not_applicable" | undefined; guidance?: string | undefined; }, { recommendations: string[]; dimension: "test-coverage-breadth" | "framework-adoption" | "test-id-hygiene" | "ci-integration" | "auth-test-coverage" | "component-test-ratio" | "api-test-coverage"; score: number; weight: number; evidence: string[]; reason?: string | undefined; applicability?: "unknown" | "applicable" | "not_applicable" | undefined; guidance?: string | undefined; }>, "many">; topRecommendations: z.ZodArray; scoreFormula: z.ZodOptional; }, "strip", z.ZodTypeAny, { label: string; level: number; computedAt: string; repoPath: string; overallScore: number; dimensions: { recommendations: string[]; dimension: "test-coverage-breadth" | "framework-adoption" | "test-id-hygiene" | "ci-integration" | "auth-test-coverage" | "component-test-ratio" | "api-test-coverage"; score: number; weight: number; evidence: string[]; reason?: string | undefined; applicability?: "unknown" | "applicable" | "not_applicable" | undefined; guidance?: string | undefined; }[]; topRecommendations: string[]; scoreFormula?: string | undefined; }, { label: string; level: number; computedAt: string; repoPath: string; overallScore: number; dimensions: { recommendations: string[]; dimension: "test-coverage-breadth" | "framework-adoption" | "test-id-hygiene" | "ci-integration" | "auth-test-coverage" | "component-test-ratio" | "api-test-coverage"; score: number; weight: number; evidence: string[]; reason?: string | undefined; applicability?: "unknown" | "applicable" | "not_applicable" | undefined; guidance?: string | undefined; }[]; topRecommendations: string[]; scoreFormula?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { scannedAt: string; routes: { path: string; method: "unknown" | "GET" | "POST" | "PUT" | "DELETE" | "PATCH"; file: string; }[]; repoPath: string; testFiles: { type: "playwright" | "cypress-e2e" | "cypress-component" | "jest" | "vitest" | "other"; file: string; coveredPaths: string[]; }[]; missingTestIds: string[]; cypressStructure: { detected: boolean; hasCommandsFile: boolean; existingE2eFiles: string[]; existingComponentFiles: string[]; e2eFolder?: string | undefined; componentFolder?: string | undefined; fixturesFolder?: string | undefined; supportFolder?: string | undefined; }; interactiveTsxFilesScanned?: number | undefined; framework?: { confidence: "high" | "medium" | "low"; evidence: string[]; primary: "unknown" | "nextjs-app-router" | "nextjs-pages-router" | "express" | "remix" | "nuxt" | "sveltekit" | "astro" | "vite"; testFrameworks: ("playwright" | "cypress-e2e" | "cypress-component" | "jest" | "vitest" | "other")[]; } | undefined; automationMaturity?: { label: string; level: number; computedAt: string; repoPath: string; overallScore: number; dimensions: { recommendations: string[]; dimension: "test-coverage-breadth" | "framework-adoption" | "test-id-hygiene" | "ci-integration" | "auth-test-coverage" | "component-test-ratio" | "api-test-coverage"; score: number; weight: number; evidence: string[]; reason?: string | undefined; applicability?: "unknown" | "applicable" | "not_applicable" | undefined; guidance?: string | undefined; }[]; topRecommendations: string[]; scoreFormula?: string | undefined; } | undefined; }, { scannedAt: string; routes: { path: string; method: "unknown" | "GET" | "POST" | "PUT" | "DELETE" | "PATCH"; file: string; }[]; repoPath: string; testFiles: { type: "playwright" | "cypress-e2e" | "cypress-component" | "jest" | "vitest" | "other"; file: string; coveredPaths: string[]; }[]; missingTestIds: string[]; cypressStructure: { detected: boolean; hasCommandsFile: boolean; existingE2eFiles: string[]; existingComponentFiles: string[]; e2eFolder?: string | undefined; componentFolder?: string | undefined; fixturesFolder?: string | undefined; supportFolder?: string | undefined; }; interactiveTsxFilesScanned?: number | undefined; framework?: { confidence: "high" | "medium" | "low"; evidence: string[]; primary: "unknown" | "nextjs-app-router" | "nextjs-pages-router" | "express" | "remix" | "nuxt" | "sveltekit" | "astro" | "vite"; testFrameworks: ("playwright" | "cypress-e2e" | "cypress-component" | "jest" | "vitest" | "other")[]; } | undefined; automationMaturity?: { label: string; level: number; computedAt: string; repoPath: string; overallScore: number; dimensions: { recommendations: string[]; dimension: "test-coverage-breadth" | "framework-adoption" | "test-id-hygiene" | "ci-integration" | "auth-test-coverage" | "component-test-ratio" | "api-test-coverage"; score: number; weight: number; evidence: string[]; reason?: string | undefined; applicability?: "unknown" | "applicable" | "not_applicable" | undefined; guidance?: string | undefined; }[]; topRecommendations: string[]; scoreFormula?: string | undefined; } | undefined; }>; export type RepoAnalysis = z.infer; export type CypressStructure = z.infer; //# sourceMappingURL=repo-analysis.schema.d.ts.map