/** * SmartProxy main module exports */ // Legacy exports (to maintain backward compatibility) // Migrated to the new proxies structure export * from './proxies/nftables-proxy/index.js'; // Export NetworkProxy elements selectively to avoid RouteManager ambiguity export { NetworkProxy, CertificateManager, ConnectionPool, RequestHandler, WebSocketHandler } from './proxies/network-proxy/index.js'; export type { IMetricsTracker, MetricsTracker } from './proxies/network-proxy/index.js'; // Export models except IAcmeOptions to avoid conflict export type { INetworkProxyOptions, ICertificateEntry, ILogger } from './proxies/network-proxy/models/types.js'; export { RouteManager as NetworkProxyRouteManager } from './proxies/network-proxy/models/types.js'; // Certificate and Port80 modules have been removed - use SmartCertManager instead export * from './redirect/classes.redirect.js'; // Export SmartProxy elements selectively to avoid RouteManager ambiguity export { SmartProxy, ConnectionManager, SecurityManager, TimeoutManager, TlsManager, NetworkProxyBridge, RouteConnectionHandler } from './proxies/smart-proxy/index.js'; export { RouteManager } from './proxies/smart-proxy/route-manager.js'; // Export smart-proxy models export type { ISmartProxyOptions, IConnectionRecord, IRouteConfig, IRouteMatch, IRouteAction, IRouteTls, IRouteContext } from './proxies/smart-proxy/models/index.js'; export type { TSmartProxyCertProvisionObject } from './proxies/smart-proxy/models/interfaces.js'; export * from './proxies/smart-proxy/utils/index.js'; // Original: export * from './smartproxy/classes.pp.snihandler.js' // Now we export from the new module export { SniHandler } from './tls/sni/sni-handler.js'; // Original: export * from './smartproxy/classes.pp.interfaces.js' // Now we export from the new module (selectively to avoid conflicts) // Core types and utilities export * from './core/models/common-types.js'; // Export IAcmeOptions from one place only export type { IAcmeOptions } from './proxies/smart-proxy/models/interfaces.js'; // Modular exports for new architecture export * as forwarding from './forwarding/index.js'; // Certificate module has been removed - use SmartCertManager instead export * as tls from './tls/index.js'; export * as http from './http/index.js';