/**
 * Test Mission Manager
 *
 * Handles CRUD operations for test missions and execution history.
 * Stores missions in .mycontext/test-missions.json
 */
import { TestMission, TestExecutionResult, ValidationRule } from "../types/flow-testing";
export declare class TestMissionManager {
    private projectPath;
    private storageFile;
    private storage;
    constructor(projectPath: string);
    /**
     * Load test missions from storage
     */
    private loadStorage;
    /**
     * Save storage to disk
     */
    private saveStorage;
    /**
     * Create a new test mission
     */
    createMission(config: {
        name: string;
        mission: string;
        expectedOutcome: string;
        validationRules?: ValidationRule[];
        startUrl?: string;
        tags?: string[];
    }): Promise<TestMission>;
    /**
     * Get a mission by ID or name
     */
    getMission(idOrName: string): Promise<TestMission | null>;
    /**
     * List all missions with optional filters
     */
    listMissions(filters?: {
        status?: "all" | "passing" | "failing";
        tag?: string;
    }): Promise<TestMission[]>;
    /**
     * Update a mission
     */
    updateMission(id: string, updates: Partial<TestMission>): Promise<TestMission | null>;
    /**
     * Delete a mission
     */
    deleteMission(id: string): Promise<boolean>;
    /**
     * Save a test execution result
     */
    saveExecution(result: TestExecutionResult): Promise<void>;
    /**
     * Get execution history for a mission
     */
    getExecutionHistory(missionId: string): Promise<TestExecutionResult[]>;
    /**
     * Get a specific execution by ID
     */
    getExecution(executionId: string): Promise<TestExecutionResult | null>;
    /**
     * Get mission statistics
     */
    getStatistics(): Promise<{
        totalMissions: number;
        totalExecutions: number;
        passRate: number;
        averageDuration: number;
    }>;
    /**
     * Import missions from MyContext user flows
     */
    importFromUserFlows(): Promise<TestMission[]>;
    /**
     * Import missions from a JSON file
     * Supports formats like tailor-cv-test-missions.json
     */
    importFromJson(filePath: string): Promise<TestMission[]>;
}
//# sourceMappingURL=test-mission-manager.d.ts.map