export interface RequestLog { id: string; proxyId: string; timestamp: Date; method: string; url: string; path: string; query: Record; headers: Record; body: any; statusCode?: number; responseBody?: any; responseHeaders?: Record; duration?: number; error?: string; } export interface ProxyConfig { id: string; name: string; proxyPort: number; targetHost: string; targetPort?: number; targetProtocol: 'http' | 'https'; enabled: boolean; createdAt: Date; updatedAt: Date; } export interface InspectorConfig { id: string; maxRequests: number; requestBodySizeLimit: number | null; updatedAt: Date; } export interface ProxyStats { proxyId: string; totalRequests: number; methodStats: Record; statusCodeStats: Record; avgDuration: number; } export interface StorageAdapter { addRequest(request: RequestLog): Promise; updateRequest(id: string, update: Partial): Promise; getRequests(filters?: RequestFilters): Promise; getRequestById(id: string): Promise; clearRequests(proxyId?: string): Promise; addProxy(proxy: ProxyConfig): Promise; updateProxy(id: string, update: Partial): Promise; deleteProxy(id: string): Promise; getProxy(id: string): Promise; getAllProxies(): Promise; getConfig(): Promise; updateConfig(update: Partial): Promise; getStats(proxyId?: string): Promise; clearAllData(): Promise; close(): Promise; } export interface RequestFilters { proxyId?: string; method?: string; path?: string; statusCode?: number; minDuration?: number; maxDuration?: number; startDate?: Date; endDate?: Date; limit?: number; offset?: number; } export interface ProxyInstance { config: ProxyConfig; server: any; proxy: any; } //# sourceMappingURL=index.d.ts.map