#!/usr/bin/env node
/**
 * Main entry point for the lightweight browser load tester
 */
import { TestConfiguration, TestResults } from './types';
/**
 * Main application class that coordinates all components
 */
export declare class LoadTesterApp {
    private config;
    private testRunner?;
    private resultsAggregator?;
    private prometheusExporter?;
    private opentelemetryExporter?;
    private isShuttingDown;
    private shutdownPromise?;
    constructor(config: TestConfiguration);
    /**
     * Start the load test application
     */
    start(): Promise<TestResults>;
    /**
     * Stop the application gracefully
     */
    stop(): Promise<TestResults | null>;
    /**
     * Get current test status
     */
    getStatus(): {
        status: string;
        testId?: undefined;
        monitoring?: undefined;
    } | {
        status: string;
        testId: string;
        monitoring: import("./controllers/test-runner").TestMonitoringData;
    };
    /**
     * Set up graceful shutdown handlers
     */
    private setupGracefulShutdown;
    /**
     * Set up test runner event handlers
     */
    private setupTestRunnerEvents;
    /**
     * Wait for test completion
     */
    private waitForCompletion;
    /**
     * Perform shutdown cleanup
     */
    private performShutdown;
    /**
     * Cleanup resources
     */
    private cleanup;
    /**
     * Display test results summary
     */
    private displayResults;
}
export * from './types';
export * from './config';
export * from './controllers/test-runner';
export * from './aggregators/results-aggregator';
export * from './exporters/prometheus-exporter';
export * from './exporters/opentelemetry-exporter';
//# sourceMappingURL=index.d.ts.map