export type TestType = 'unit' | 'integration' | 'e2e' | 'performance' | 'security'; export type TestFramework = 'jest' | 'mocha' | 'vitest' | 'cypress' | 'playwright' | 'generic'; export interface TestSuggestion { readonly id: string; readonly testType: TestType; readonly framework: TestFramework; readonly description: string; readonly testCode: string; readonly setupCode?: string; readonly targetFunction?: string; readonly targetFile?: string; readonly testCases: TestCase[]; readonly coverage?: TestCoverage; } export interface TestCase { readonly name: string; readonly description: string; readonly input: Record; readonly expectedOutput?: unknown; readonly expectedBehavior?: string; readonly shouldThrow?: boolean; readonly expectedError?: string; } export interface TestCoverage { readonly lines: number; readonly branches: number; readonly functions: number; readonly statements: number; } export interface TestSuggestionBuilder { id(id: string): TestSuggestionBuilder; testType(testType: TestType): TestSuggestionBuilder; framework(framework: TestFramework): TestSuggestionBuilder; description(description: string): TestSuggestionBuilder; testCode(testCode: string): TestSuggestionBuilder; setupCode(setupCode: string): TestSuggestionBuilder; targetFunction(targetFunction: string): TestSuggestionBuilder; targetFile(targetFile: string): TestSuggestionBuilder; addTestCase(testCase: TestCase): TestSuggestionBuilder; testCases(testCases: TestCase[]): TestSuggestionBuilder; coverage(coverage: TestCoverage): TestSuggestionBuilder; build(): TestSuggestion; } export declare class TestSuggestionImpl implements TestSuggestionBuilder { private suggestion; id(id: string): TestSuggestionBuilder; testType(testType: TestType): TestSuggestionBuilder; framework(framework: TestFramework): TestSuggestionBuilder; description(description: string): TestSuggestionBuilder; testCode(testCode: string): TestSuggestionBuilder; setupCode(setupCode: string): TestSuggestionBuilder; targetFunction(targetFunction: string): TestSuggestionBuilder; targetFile(targetFile: string): TestSuggestionBuilder; addTestCase(testCase: TestCase): TestSuggestionBuilder; testCases(testCases: TestCase[]): TestSuggestionBuilder; coverage(coverage: TestCoverage): TestSuggestionBuilder; build(): TestSuggestion; } //# sourceMappingURL=TestSuggestion.d.ts.map