export interface RequestConfig { method: "GET" | "POST" | "PUT" | "DELETE" | "PATCH"; url: string; headers?: Record; body?: any; query?: Record; params?: Record; formData?: Record; timeout?: number; } export interface HttpConfig { baseUrl?: string; timeout?: number; headers?: Record; } export interface ErrorHandlingConfig { expectMaxResponseTime: number; } export interface ApiTestConfig { name: string; request: RequestConfig; weight: number; errorHandling?: ErrorHandlingConfig; } export interface TestGroupConfig { name: string; http: HttpConfig; threads: number; connections: number; duration: number; timeout?: number; latency?: boolean; tests: ApiTestConfig[]; executionMode: "parallel" | "sequential"; delay?: number; } export interface BenchmarkConfig { name: string; description?: string; groups: TestGroupConfig[]; } export interface RequestResult { name: string; success: boolean; responseTime: number; statusCode?: number; error?: string; timestamp: number; requestSize?: number; responseSize?: number; isTimeout?: boolean; isSlow?: boolean; } export interface RealTimeStats { totalRequests: number; successfulRequests: number; failedRequests: number; timeoutRequests: number; slowRequests: number; averageResponseTime: number; minResponseTime: number; maxResponseTime: number; requestsPerSecond: number; errorRate: number; timeoutRate: number; slowRate: number; } export interface DetailedStats extends RealTimeStats { p50ResponseTime: number; p90ResponseTime: number; p95ResponseTime: number; p99ResponseTime: number; totalRequestSize: number; totalResponseSize: number; } export interface GroupResult { name: string; stats: DetailedStats; requests: RequestResult[]; } export interface BenchmarkResult { startTime: number; endTime: number; duration: number; groups: GroupResult[]; overallStats: DetailedStats; } //# sourceMappingURL=index.d.ts.map