UNPKG

@iota-big3/sdk-gateway

Version:

Universal API Gateway with protocol translation, intelligent routing, rate limiting, health checking, and caching

60 lines 1.84 kB
import { EventEmitter } from 'events'; import type { GatewayRequest, GatewayResponse } from '../types/gateway-types'; export interface ChaosOptions { enabled: boolean; failures: { networkLatency: { probability: number; minMs: number; maxMs: number; }; serviceFailure: { probability: number; statusCodes: number[]; }; timeouts: { probability: number; duration: number; }; resourceExhaustion: { probability: number; type: 'cpu' | 'memory' | 'connections'; }; malformedResponse: { probability: number; types: ('truncated' | 'invalid-json' | 'empty' | 'huge')[]; }; }; seed?: number; } export declare class ChaosError extends Error { readonly type: string; readonly injectedAt: number; constructor(message: string, type: string, injectedAt?: number); } export declare class ChaosMiddleware extends EventEmitter { private readonly options; private random; private injectionCount; constructor(options: ChaosOptions); injectChaosAsync(request: GatewayRequest): Promise<void>; transformResponse(response: GatewayResponse): GatewayResponse; private shouldInject; private injectNetworkLatencyAsync; private selectRandomStatusCode; private selectRandomType; private simulateResourceExhaustionAsync; private simulateCPUSpikeAsync; private simulateMemoryPressureAsync; private createMalformedResponse; private sleepAsync; getStatistics(): { enabled: boolean; injections: Record<string, number>; uptime: number; }; reset(): void; enable(): void; disable(): void; } //# sourceMappingURL=chaos-middleware.d.ts.map