export interface E2EManagerOptions { apiKey: string; repoPath: string; baseUrl?: string; testOutputDir?: string; waitForServer?: boolean; serverPort?: number; serverTimeout?: number; maxTestWaitTime?: number; ngrokAuthToken?: string; downloadArtifacts?: boolean; commit?: string; commitRange?: string; since?: string; last?: number; pr?: number; prSequence?: boolean; baseBranch?: string | undefined; headBranch?: string | undefined; } export interface E2EResult { success: boolean; suiteUuid?: string | undefined; suite?: any; error?: string; testFiles?: string[]; prSequenceResults?: PRSequenceResult[]; totalCommitsTested?: number; } export interface PRSequenceResult { commitHash: string; commitMessage: string; commitOrder: number; suiteUuid: string; success: boolean; error?: string; testFiles?: string[]; } /** * Manages the complete E2E test execution lifecycle from commit analysis to result reporting * ALWAYS handles tunnel creation internally - this is our core responsibility */ export declare class E2EManager { private client; private gitAnalyzer; private activeTunnelId; private activeTunnel; private urlUuidSubdomain; private options; constructor(options: E2EManagerOptions); /** * Create tunnel internally for test suite * This is our core responsibility - we ALWAYS handle tunnels internally! */ private createInternalTunnel; /** * Cleanup resources (tunnel, etc.) */ cleanup(): Promise; /** * Run E2E tests for the current commit or working changes */ runCommitTests(): Promise; /** * Run GitHub App-based PR test - sends single request with PR number * Backend handles all git analysis via GitHub App integration */ runGitHubAppPRTest(): Promise; /** * Run PR commit sequence tests - sends individual test requests for each commit */ runPRCommitSequenceTests(): Promise; /** * Create a test suite for a specific commit in a PR sequence */ private createCommitTestSuite; /** * Create a test description for a specific commit in a PR sequence */ private createCommitTestDescription; /** * Wait for the local development server to be ready */ waitForServer(port?: number, maxWaitTime?: number): Promise; /** * Analyze git changes (working changes, specific commit, or commit range) */ private analyzeChanges; /** * Create a comprehensive test description based on changes */ private createTestDescription; /** * Analyze file types in the changes */ private analyzeFileTypes; /** * Save test artifacts (scripts, recordings, etc.) to local directory */ private saveTestArtifacts; /** * Report test results to console */ private reportResults; } //# sourceMappingURL=e2e-manager.d.ts.map