/**
 * TLS module providing SNI extraction, TLS alerts, and other TLS-related utilities
 */

// Export TLS alert functionality
export * from './alerts/tls-alert.js';

// Export SNI handling
export * from './sni/sni-handler.js';
export * from './sni/sni-extraction.js';
export * from './sni/client-hello-parser.js';

// Export TLS utilities
export * from './utils/tls-utils.js';

// Create a namespace for SNI utilities
import { SniHandler } from './sni/sni-handler.js';
import { SniExtraction } from './sni/sni-extraction.js';
import { ClientHelloParser } from './sni/client-hello-parser.js';

// Export utility objects for convenience
export const SNI = {
  // Main handler class (for backward compatibility)
  Handler: SniHandler,

  // Utility classes
  Extraction: SniExtraction,
  Parser: ClientHelloParser,

  // Convenience functions
  extractSNI: SniHandler.extractSNI,
  processTlsPacket: SniHandler.processTlsPacket,
};