UNPKG

@iota-big3/sdk-gateway

Version:

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

107 lines 7.26 kB
"use strict"; /** * @iota-big3/sdk-gateway * Clean Index - Phase 2d Rebuild */ Object.defineProperty(exports, "__esModule", { value: true }); exports.DEFAULT_PERFORMANCE_THRESHOLDS = exports.DEFAULT_CHAOS_OPTIONS = exports.DEFAULT_RATE_LIMIT_CONFIG = exports.DEFAULT_CIRCUIT_BREAKER_CONFIG = exports.DEFAULT_GATEWAY_CONFIG = exports.CacheManager = exports.CostTracker = exports.validateGatewayRequest = exports.validateDiscoveredService = exports.isServiceEndpoint = exports.isRouteConfig = exports.isProtocol = exports.isHealthCheckResult = exports.isGatewayRequest = exports.isDiscoveredService = exports.createGatewayResponse = exports.createErrorResponse = exports.runSmokeTests = exports.generateReport = exports.criticalPaths = exports.PerformanceMonitor = exports.ChaosMiddleware = exports.ChaosError = exports.RoutingEngine = exports.RateLimiter = exports.CircuitBreaker = exports.SLAMonitor = exports.HealthChecker = exports.createGateway = exports.UniversalAPIGateway = exports.ServiceDiscovery = exports.ResponseAggregator = exports.HTTPAdapter = void 0; const tslib_1 = require("tslib"); // Export types tslib_1.__exportStar(require("./types/gateway-types"), exports); // Export main gateway components var http_adapter_1 = require("./adapters/http.adapter"); Object.defineProperty(exports, "HTTPAdapter", { enumerable: true, get: function () { return http_adapter_1.HTTPAdapter; } }); var response_aggregator_1 = require("./aggregation/response-aggregator"); Object.defineProperty(exports, "ResponseAggregator", { enumerable: true, get: function () { return response_aggregator_1.ResponseAggregator; } }); var service_registry_1 = require("./discovery/service-registry"); Object.defineProperty(exports, "ServiceDiscovery", { enumerable: true, get: function () { return service_registry_1.ServiceDiscovery; } }); var gateway_manager_1 = require("./gateway/gateway-manager"); Object.defineProperty(exports, "UniversalAPIGateway", { enumerable: true, get: function () { return gateway_manager_1.UniversalAPIGateway; } }); Object.defineProperty(exports, "createGateway", { enumerable: true, get: function () { return gateway_manager_1.createGateway; } }); // Export clean modules var health_checker_1 = require("./monitoring/health-checker"); Object.defineProperty(exports, "HealthChecker", { enumerable: true, get: function () { return health_checker_1.HealthChecker; } }); var sla_monitor_1 = require("./monitoring/sla-monitor"); Object.defineProperty(exports, "SLAMonitor", { enumerable: true, get: function () { return sla_monitor_1.SLAMonitor; } }); var circuit_breaker_1 = require("./resilience/circuit-breaker"); Object.defineProperty(exports, "CircuitBreaker", { enumerable: true, get: function () { return circuit_breaker_1.CircuitBreaker; } }); var rate_limiter_1 = require("./resilience/rate-limiter"); Object.defineProperty(exports, "RateLimiter", { enumerable: true, get: function () { return rate_limiter_1.RateLimiter; } }); var routing_engine_1 = require("./routing/routing-engine"); Object.defineProperty(exports, "RoutingEngine", { enumerable: true, get: function () { return routing_engine_1.RoutingEngine; } }); // Export Phase 2k Production Readiness components var chaos_middleware_1 = require("./chaos/chaos-middleware"); Object.defineProperty(exports, "ChaosError", { enumerable: true, get: function () { return chaos_middleware_1.ChaosError; } }); Object.defineProperty(exports, "ChaosMiddleware", { enumerable: true, get: function () { return chaos_middleware_1.ChaosMiddleware; } }); var performance_monitor_1 = require("./monitoring/performance-monitor"); Object.defineProperty(exports, "PerformanceMonitor", { enumerable: true, get: function () { return performance_monitor_1.PerformanceMonitor; } }); var critical_paths_1 = require("./smoke-tests/critical-paths"); Object.defineProperty(exports, "criticalPaths", { enumerable: true, get: function () { return critical_paths_1.criticalPaths; } }); Object.defineProperty(exports, "generateReport", { enumerable: true, get: function () { return critical_paths_1.generateReport; } }); Object.defineProperty(exports, "runSmokeTests", { enumerable: true, get: function () { return critical_paths_1.runSmokeTests; } }); // Export validation utilities and type guards var validation_1 = require("./utils/validation"); Object.defineProperty(exports, "createErrorResponse", { enumerable: true, get: function () { return validation_1.createErrorResponse; } }); Object.defineProperty(exports, "createGatewayResponse", { enumerable: true, get: function () { return validation_1.createGatewayResponse; } }); Object.defineProperty(exports, "isDiscoveredService", { enumerable: true, get: function () { return validation_1.isDiscoveredService; } }); Object.defineProperty(exports, "isGatewayRequest", { enumerable: true, get: function () { return validation_1.isGatewayRequest; } }); Object.defineProperty(exports, "isHealthCheckResult", { enumerable: true, get: function () { return validation_1.isHealthCheckResult; } }); Object.defineProperty(exports, "isProtocol", { enumerable: true, get: function () { return validation_1.isProtocol; } }); Object.defineProperty(exports, "isRouteConfig", { enumerable: true, get: function () { return validation_1.isRouteConfig; } }); Object.defineProperty(exports, "isServiceEndpoint", { enumerable: true, get: function () { return validation_1.isServiceEndpoint; } }); Object.defineProperty(exports, "validateDiscoveredService", { enumerable: true, get: function () { return validation_1.validateDiscoveredService; } }); Object.defineProperty(exports, "validateGatewayRequest", { enumerable: true, get: function () { return validation_1.validateGatewayRequest; } }); // Export billing and caching var cost_tracker_1 = require("./billing/cost-tracker"); Object.defineProperty(exports, "CostTracker", { enumerable: true, get: function () { return cost_tracker_1.CostTracker; } }); var cache_manager_1 = require("./caching/cache-manager"); Object.defineProperty(exports, "CacheManager", { enumerable: true, get: function () { return cache_manager_1.CacheManager; } }); // Configuration defaults exports.DEFAULT_GATEWAY_CONFIG = { port: 8080, host: 'localhost', routes: [], monitoring: { enabled: true, metrics: true, tracing: false, logging: true } }; exports.DEFAULT_CIRCUIT_BREAKER_CONFIG = { threshold: 5, timeout: 60000, resetTimeout: 30000 }; exports.DEFAULT_RATE_LIMIT_CONFIG = { windowMs: 60000, max: 100 }; // Phase 2k Production defaults exports.DEFAULT_CHAOS_OPTIONS = { enabled: false, // Disabled by default for safety failures: { networkLatency: { probability: 0, minMs: 10, maxMs: 100 }, serviceFailure: { probability: 0, statusCodes: [500, 503] }, timeouts: { probability: 0, duration: 5000 }, resourceExhaustion: { probability: 0, type: 'cpu' }, malformedResponse: { probability: 0, types: ['truncated'] } } }; exports.DEFAULT_PERFORMANCE_THRESHOLDS = { latency: { p50: 50, p95: 150, p99: 300 }, errorRate: 0.01, throughput: { min: 100, max: 10000 }, memory: { max: 512, growthRate: 10 } }; //# sourceMappingURL=index.js.map