/** * Test Scenario Runner * * Executes test scenarios for dev CLI testing. * * @since v1.41.4 */ import type { ScenarioResult, ScenarioRunnerOptions, ScenarioSummary, StepResult, TestScenario, TestStep } from './types.js'; /** * Context for scenario execution */ export interface RunnerContext { /** Current UI state */ state: Record; /** Get current view */ getView(): string; /** Get visible text */ getVisibleText(): string; /** Check if error is displayed */ hasError(): boolean; /** Get count of items by type */ getCount(type: string): number; /** Execute a key input */ sendKey(key: string): Promise; /** Type text */ typeText(text: string): Promise; /** Execute an action */ executeAction(action: string, params?: Record): Promise; /** Wait for a condition */ waitFor(condition: () => boolean, timeout?: number): Promise; } /** * Create a mock runner context for testing */ export declare function createMockContext(): RunnerContext; /** * Execute a single test step */ export declare function executeStep(step: TestStep, context: RunnerContext, speedMultiplier?: number): Promise; /** * Run a complete test scenario */ export declare function runScenario(scenario: TestScenario, context: RunnerContext, options?: ScenarioRunnerOptions): Promise; /** * Run multiple scenarios */ export declare function runScenarios(scenarios: TestScenario[], contextFactory: () => RunnerContext, options?: ScenarioRunnerOptions): Promise; /** * Format scenario summary for display */ export declare function formatSummary(summary: ScenarioSummary): string; /** * Format a single scenario result for display */ export declare function formatResult(result: ScenarioResult): string; //# sourceMappingURL=runner.d.ts.map