@allan1361/iota-big3-sdk-middleware
Version:
🏆 A+ Grade Certified Enterprise Middleware Framework - Phase 3 Certified (90/100) with advanced resilience patterns, comprehensive type safety, and production-ready observability
51 lines • 3.35 kB
TypeScript
import type { JsonValue } from '@iota-big3/sdk-types';
export type { AuthMiddlewareOptions, AuthResult, CompressionMiddlewareOptions, CorsMiddlewareOptions, ErrorMiddlewareFunction, IMiddlewareManager, LoggingMiddlewareOptions, MiddlewareConfig, MiddlewareEvents, MiddlewareFunction, MiddlewareHealth, MiddlewareRegistration, RateLimitMiddlewareOptions, Result, SDKIntegrations, ValidationMiddlewareOptions, ValidationResult } from './types';
export { extractHeaderString, extractQueryString, isAuthResult, isAuthUser, isJsonObject, isJsonValue, isMiddlewareConfig, isValidationResult, isValidHeaderValue, validateJsonBody } from './types';
export { MiddlewareManager } from './middleware-manager';
export { CircuitBreaker, CircuitBreakerState, createResilientMiddleware, HealthMonitor, ResilientMiddlewareFactory, RetryHandler, TimeoutHandler } from './resilience';
export type { CircuitBreakerConfig, HealthCheckConfig, ResilienceConfig, RetryConfig, TimeoutConfig } from './resilience';
export { createOptimizedMiddleware, ObjectPool, OptimizedMiddlewareFactory, PerformanceMonitor, RequestBatcher, ResponseCache } from './performance';
export type { BatchOptions, CacheConfig, PerformanceConfig, PerformanceMetrics } from './performance';
export declare function createMiddlewareManager(integrations?: SDKIntegrations): MiddlewareManager;
export declare const presets: {
basic: () => MiddlewareManager;
secure: (integrations: SDKIntegrations) => MiddlewareManager;
api: (integrations: SDKIntegrations) => MiddlewareManager;
production: (integrations: SDKIntegrations) => MiddlewareManager;
};
export declare class MiddlewareChainBuilder {
private manager;
constructor(integrations?: SDKIntegrations);
use(name: string, middleware: MiddlewareFunction | ErrorMiddlewareFunction): this;
cors(options?: CorsMiddlewareOptions): this;
auth(options?: AuthMiddlewareOptions): this;
rateLimit(options?: RateLimitMiddlewareOptions): this;
compression(options?: CompressionMiddlewareOptions): this;
logging(options?: LoggingMiddlewareOptions): this;
validation(schema: JsonValue, options?: ValidationMiddlewareOptions): this;
build(): MiddlewareManager;
}
import type { Application as Express } from 'express';
import type { FastifyInstance } from 'fastify';
export declare function applyToExpress(app: Express, manager: MiddlewareManager): void;
export declare function applyToFastify(fastify: FastifyInstance, manager: MiddlewareManager): Promise<void>;
export declare function createProductionMiddleware(integrations: SDKIntegrations): {
manager: MiddlewareManager;
resilience: ResilientMiddlewareFactory;
performance: OptimizedMiddlewareFactory;
};
declare const _default: {
createMiddlewareManager: typeof createMiddlewareManager;
presets: {
basic: () => MiddlewareManager;
secure: (integrations: SDKIntegrations) => MiddlewareManager;
api: (integrations: SDKIntegrations) => MiddlewareManager;
production: (integrations: SDKIntegrations) => MiddlewareManager;
};
MiddlewareChainBuilder: typeof MiddlewareChainBuilder;
applyToExpress: typeof applyToExpress;
applyToFastify: typeof applyToFastify;
createProductionMiddleware: typeof createProductionMiddleware;
};
export default _default;
//# sourceMappingURL=index.d.ts.map