UNPKG

@kimsungwhee/apple-docs-mcp

Version:

MCP server for Apple Developer Documentation - Search iOS/macOS/SwiftUI/UIKit docs, WWDC videos, Swift/Objective-C APIs & code examples in Claude, Cursor & AI assistants

76 lines 1.9 kB
/** * HTTP client with timeout, retry, and rate limiting */ interface RequestOptions { timeout?: number; retries?: number; retryDelay?: number; headers?: Record<string, string>; } interface PerformanceStats { totalRequests: number; successfulRequests: number; failedRequests: number; totalResponseTime: number; averageResponseTime: number; successRate: number; requestsByStatus: Record<number, number>; requestsByDomain: Record<string, number>; } declare class HttpClient { private requestQueue; private activeRequests; private readonly maxConcurrentRequests; private stats; /** * Make a GET request with timeout and retry logic */ get(url: string, options?: RequestOptions): Promise<Response>; /** * Execute request with concurrency control */ private executeWithQueue; /** * Fetch with retry logic and performance monitoring */ private fetchWithRetry; /** * Update performance statistics */ private updateStats; /** * Delay utility */ private delay; /** * Get JSON response with error handling */ getJson<T = unknown>(url: string, options?: RequestOptions): Promise<T>; /** * Get text response with error handling */ getText(url: string, options?: RequestOptions): Promise<string>; /** * Get current queue status */ getStatus(): { activeRequests: number; queuedRequests: number; maxConcurrent: 5; }; /** * Get performance statistics */ getPerformanceStats(): PerformanceStats; /** * Reset performance statistics */ resetStats(): void; /** * Get formatted performance report */ getPerformanceReport(): string; } export declare const httpClient: HttpClient; export {}; //# sourceMappingURL=http-client.d.ts.map