/**
 * Test Generator - Converts YAML Test Specifications to Executable TypeScript Tests
 *
 * Takes test-cases (YAML) and generates executable integration tests.
 *
 * Supports:
 * - Skill activation tests
 * - API integration tests (Jira, ADO, GitHub)
 * - End-to-end workflow tests
 * - Uses .env credentials for real API calls
 */
import { Logger } from '../utils/logger.js';
/**
 * Set the logger for this module
 */
export declare function setTestGeneratorLogger(logger: Logger): void;
export interface TestSpec {
    name: string;
    description: string;
    type?: 'skill_activation' | 'api_integration' | 'e2e_workflow';
    input: {
        prompt?: string;
        api_call?: {
            method: string;
            endpoint: string;
            body?: any;
            headers?: Record<string, string>;
        };
        setup?: string[];
    };
    expected_output: {
        skill_activated?: boolean;
        agent_invoked?: string;
        api_response?: {
            status: number;
            body?: any;
        };
        files_created?: string[];
        result?: any;
    };
    requires?: {
        env_vars?: string[];
        credentials?: string[];
    };
}
export interface GeneratedTest {
    skillName: string;
    testFilePath: string;
    testCount: number;
    content: string;
}
export declare class TestGenerator {
    private projectRoot;
    private testSpecsDir;
    private testOutputDir;
    constructor(projectRoot?: string);
    /**
     * Generate tests for a specific skill
     */
    generateTestsForSkill(skillName: string): Promise<GeneratedTest | null>;
    /**
     * Generate tests for all skills
     */
    generateAllTests(): Promise<GeneratedTest[]>;
    /**
     * Load test spec from YAML file
     */
    private loadTestSpec;
    /**
     * Generate TypeScript test file from specs
     */
    private generateTestFile;
    /**
     * Generate file header with imports
     */
    private generateFileHeader;
    /**
     * Generate test class
     */
    private generateTestClass;
    /**
     * Generate individual test method
     */
    private generateTestMethod;
    /**
     * Generate skill activation test logic
     */
    private generateSkillActivationTest;
    /**
     * Generate API integration test logic
     */
    private generateApiIntegrationTest;
    /**
     * Generate generic test logic
     */
    private generateGenericTest;
    /**
     * Generate report method
     */
    private generateReportMethod;
    /**
     * Generate test runner
     */
    private generateTestRunner;
    /**
     * Capitalize words in skill name
     */
    private capitalizeWords;
    /**
     * Format skill name for display
     */
    private formatSkillName;
    /**
     * Format class name
     */
    private formatClassName;
    /**
     * Convert to camelCase - sanitizes all special characters
     */
    private camelCase;
    /**
     * Escape string for use in single-quoted JavaScript strings
     */
    private escapeString;
}
//# sourceMappingURL=test-generator.d.ts.map